我正在使用微服务应用程序,并且有多种服务。我正在使用docker-compose运行不同微服务的实例。我们为每个微服务创建一个映像。如果更改微服务的代码,则使用“ docker-compose down”,然后更改更新的微服务的版本,然后使用“ docker-compose up”。我认为,应该有一种在运行时更新映像的方法,而无需使用“ docker-compose down”和“ docker-compose up”。
是否存在用docker-compose替换正在运行的容器的映像的方法?
答案 0 :(得分:2)
您可以跳过docker-compose down
。如果docker-compose up
命令自上次启动以来已被生成或拉出,则该命令将重新创建容器。有关更多详细信息和实际操作,请参见this answer。
您不能从正在运行的容器中热交换映像。这相当于在运行Linux OS时替换根硬盘驱动器。这会破坏一切,尤其是打开文件句柄的一切。