我构建容器:
docker build -f Dockerfile.xyz -t dave/xyz .
之后我运行 docker:
docker run -it \
--env='LDAP_USER=uid=bot_for_git,ou=bots,dc=company,dc=org' \
--env='LDAP_PASS=' --volume=/srv/docker/xyz/data1:/data \
-p 8010:8010 -p 9989:9989 dave/xyz
并验证一切正常。
下一步是什么?
我的猜测是,我应该运行 docker ps
,从那里获取容器 ID,并以相同的首选项(环境、端口映射、卷映射)运行容器,我应该运行:
docker start -a container_id
我说得对吗?
那么重建镜像呢,如果更改 Dockerfile.xyz
并重建 dave/xyz,是否有 container_id
的容器得到
自动更新,或者我应该重复 docker run -it
步骤?
最佳答案
docker build [...]
创建一个图像。您可以使用 docker images
查看您的图像.您可以使用 --tag=[...]
为该图像指定一个特定名称选项:
docker build --tag="superuser/bestimage:latest" .
docker run [...] <imageId>
获取该图像并启动一个容器。您可以使用 docker ps
查看事件容器(全部带有 docker ps -a
)。如果您使用上面的标签,docker run -it superuser/bestimage:latest
可以使用。
当您重建图像时,会创建一个具有新 ID 的新图像。你可以通过docker images
看到.
does container with container_id get update automatically
否。为了更新您的容器,您必须先使用 docker kill <id>
删除容器然后用 docker run -it <newID>
开始一个新的.
关于linux - docker run 容器,如何重新运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33626846/