gpt4 book ai didi

docker - 如何在 docker-compose 下强制重新创建并仅启动一个容器?

转载 作者:行者123 更新时间:2023-12-05 04:29:47 73 4
gpt4 key购买 nike

在我进行任何代码更改后,我的典型开发步骤是:

  1. 更改代码并构建 jar 文件
  2. 构建使用 jar 文件的 docker 镜像
  3. 终止当前的“docker-compose up”命令。
  4. 再次运行“docker-compose up”。

我的 docker-compose 文件有五个服务。在第 3 步,所有容器都关闭。理想情况下,我只需要重新运行我的应用程序容器。

我正在寻找一种在批处理脚本中执行以下操作的方法:

  1. 关闭应用程序容器。其他四个容器应继续运行。
  2. 构建一个新的 docker 镜像
  3. 强制 docker-compose 重新创建我的应用程序容器并启动它。

对于第 1 步,看起来我可以使用“docker-compose kill myappname”。

第 2 步也很简单。

我想知道如何完成第 3 步。谢谢。

最佳答案

您不需要显式停止当前容器。

如果您的图像已更改,docker compose 将识别它并在您再次运行 up 命令时重新创建您的容器。

因此,重建您的镜像并运行 docker compose up

如果您使用 compose 来构建镜像,请添加 --build 标志以让它重建您的镜像,之后还会重新创建容器。

您还可以将特定服务的名称添加到您的 up 命令,即 docker compose up -d --build app

如果图像没有改变,你可以添加--force-recreate标志。

关于docker - 如何在 docker-compose 下强制重新创建并仅启动一个容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72225055/

73 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com