如何保持ubuntu映像运行?

我尝试使用以下命令启动容器

sudo docker run ubuntu 

之后,我检查了

 sudo docker ps -a 

发现容器已经退出

为什么退出?

我怎么能保持它运行在backgroud没有指定 – 它要求并附上它?

由我自己解决,一个优雅的方式来保持容器运行,并等待进一步的“附加”或“执行”是以下(保持由-i选项打开STDIN)

 sudo docker -i -d run ubuntu 

您需要使用docker run命令启动一个不会退出的应用程序。

例:

docker run -d --entrypoint '/bin/bash cat' ubuntu

如果你想容器不存在,你必须使用-d参数

所以它看起来像这样:

 docker run -d ubuntu 

正确的语法是

(从docker run --help

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

你忘了指定一个命令。

你应该看看docker中心

https://registry.hub.docker.com/

例如对于nginx,如果你看

https://hub.docker.com/_/nginx/

你会find

docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx

如果你看

https://github.com/nginxinc/docker-nginx/blob/7f3ef0927ec619d20181e677c97f991df0d7d446/Dockerfile

你会注意到Dockerfile的最后一行是

CMD ["nginx", "-g", "daemon off;"]

这意味着当你启动docker image nginx的时候,隐式动作就是启动nginx。