我有一个包含4个容器的docker-compose.yml
文件:redis
、postgres
、api
和worker
。
在worker
容器的开发过程中,我经常需要重新启动它才能应用更改。有没有重启单个容器(例如worker
)而不重启其他容器的好方法?
发布于 2015-07-18 06:36:47
非常简单:使用以下命令:
docker-compose restart worker
您可以设置容器销毁前等待停止的时间,单位为秒
docker-compose restart -t 30 worker
请注意,这将重新启动容器,但不会重新构建它。如果您想要应用您的更改,然后重新启动,请查看其他答案。
发布于 2016-09-15 05:43:24
要重新启动带有更改的服务,下面是我执行的步骤:
docker-compose stop -t 1 worker
docker-compose build worker
docker-compose up --no-start worker
docker-compose start worker
发布于 2018-07-25 19:18:18
以下命令
docker-compose restart worker
将停止并启动容器。也就是说,不从docker-compose.xml加载任何更改
STOP类似于PC中的休眠。因此,stop/start不会查找配置文件中所做的任何更改。要从容器(docker-compose.xml)的配方中重新加载,我们需要删除并创建容器(类似于重启PC )
因此命令将如下所示
docker-compose stop worker // go to hibernate
docker-compose rm worker // shutdown the PC
docker-compose create worker // create the container from image and put it in hibernate
docker-compose start worker //bring container to life from hibernation
https://stackoverflow.com/questions/31466428
复制相似问题