我以分离模式运行它,
docker run -d busybox:1.24
但它不会显示在docker ps
是什么原因?应该不行吗?
我是否必须传递sleep 1000
之类的“运行命令”?
编辑:似乎没有任何内容可以运行时容器停止了。
答案 0 :(得分:1)
运行docker ps
时,您只会看到正在运行的容器列表。
要查看所有容器,包括已停止,创建,退出,重新启动等的容器,则应使用docker ps -a
。
busybox
容器没有运行任何东西。因此它将在启动后立即退出。
如果您执行docker run -d busybox:1.24 sleep 10
,然后运行docker ps
,则将看到正在运行的容器-直到sleep
进程退出(10秒后)。此时,您需要再次使用docker ps -a
。
答案 1 :(得分:0)
取决于CMD指令在Dockerfile中说的内容。如果您不运行连续运行的脚本或程序,则容器将立即结束。
要查看容器的状态:-a甚至显示退出的容器
docker ps -a
看看它运行时发生了什么
docker logs <container-id>
运行cmd提示
docker run -it <container-id> /bin/bash
要以分离模式运行,您需要等待脚本或命令,例如:
sleep infinite