在容器内执行命令
Docker 的强大功能之一是能够在运行的容器内执行命令。这种能力对于调试、运行维护任务或在不停止容器的情况下更新配置非常有用。
任务
你的任务是:
- 基于
ubuntu
镜像启动一个名为 my-shell-container
的容器。容器应在后台保持运行。
- 在
my-shell-container
容器内执行命令 echo "Hello World"
。
要求
- 使用
docker run
命令启动容器。
- 确保容器启动后保持活动状态。
- 使用
docker exec
命令在容器内执行命令。
- 所有操作都在
/home/labex/project
目录下执行。
提示
基于 ubuntu
镜像的容器在启动后会立即退出,除非指定了一个长时间运行的命令。为了让容器保持活动状态,可以在启动容器时运行类似 sleep infinity
的命令。例如:
docker your-command sleep infinity
示例
启动容器后,你可以使用 docker ps
命令确认容器正在运行。输出应类似于以下内容:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1a2b3c4d5e6f ubuntu "<command>" 30 seconds ago Up 29 seconds my-shell-container
当你在容器内执行 echo
命令时,你应该会看到以下输出:
Hello World
这表明你已成功在运行的容器内执行了命令。
干得漂亮!你现在已经学会了如何通过在容器内执行命令来与运行的容器进行交互。这项技能为容器管理和维护打开了无限可能。在最后一步中,我们将学习如何通过删除不再需要的容器来进行清理。