【发布时间】:2016-08-21 11:11:02
【问题描述】:
在 docker-compose.yml 中定义了服务范围。这些服务已经启动。我只需要重建其中一个并在没有其他服务的情况下启动它。 我运行以下命令:
docker-compose up -d # run all services
docker-compose stop nginx # stop only one. but it still running !!!
docker-compose build --no-cache nginx
docker-compose up -d --no-deps # link nginx to other services
最后我得到了旧的 nginx 容器。 顺便说一句,docker-compose 不会杀死所有正在运行的容器!
【问题讨论】:
-
docker-compose up --build -
只是为了澄清上面的评论:
docker-compose up --build重建所有容器。使用@denov 评论中所述的docker-compose up --build <service_name>。 -
docker-compose up --build <service_name>如果您的 docker-compose.yml 包含来自容器注册表的容器,则无法使用 -
docker-compose build --no-cache当您想从第一级构建时。 -
应该很容易理解这些语义(不是你@yuklia - 撰写团队)。不知道为什么我们在这个千年里仍然在为此苦苦挣扎。
标签: docker docker-compose docker-container