在容器中执行命令
Docker 的强大功能之一是能够在运行中的容器内部执行命令。这种能力对于调试、运行维护任务或在不停止容器的情况下更新配置来说是无价的。
任务
你的任务是:
- 启动一个名为
my-shell-container 的容器,基于 ubuntu 镜像。该容器应保持在后台运行。
- 在
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
这表明你已成功在运行中的容器内部执行了命令。
做得好!你现在已经学会了如何通过在容器内部执行命令来与其进行交互。这项技能为容器管理和维护开启了无限可能。在最后一步中,我们将学习如何通过删除不再需要的容器来进行清理。