如何在使用 jib 时创建 docker-compose.yml 文件?

How to create docker-compose.yml file while using jib?

我使用jib插件创建镜像,而docker-compose需要Dockerfile。我如何 Link 已经通过 jib 将图像制作到我的 docker-compose 以便它可以构建我的后端进程?

gradle jibDockerBuild && docker-compose up 是一个合理的解决方法。您只需要在 docker-compose.yml image: 属性(而不是 build:)中设置正确的图像名称。当您的应用程序没有变化时,jibDockerBuild 命令几乎没有任何操作(除非将图像推送到您的 Docker 守护程序所需的时间)。当您进行更改时,Jib 将构建一个新图像,docker-compose 将使用它。当然,如果您不必通过 Jib 重建映像,仅 docker-compose up 就足够了,它只会使用 Docker 守护程序缓存中的当前映像。

另一种选择:如果您的图像很大并且网络带宽不错,使用 gradle jib && docker pull <your image> && docker-compose up 向注册表(无论是本地的还是远程的)推送和拉取可能会更快。 (这是因为 Docker 引擎 API 与 Docker 注册表 API 相比功能有限;Jib 必须使用 jibDockerBuild.