docker - `docker-compose.yml` 应该在自己的存储库中吗?

标签 docker docker-compose

我正在使用 Vue.js 和 Express API 构建一个小型 Web 应用程序,每个应用程序都有自己的 Dockerfile .我目前能够构建这些图像并将它们发布到私有(private) Docker 存储库,然后将它们拉到虚拟机上并运行它们。我想添加 Docker Compose,我经常看到它与服务的代码一起使用,例如

|--..
|__api/
|__client/
|__docker-compose.yml

但这似乎您无法将图像发布到存储库,因为 Docker Compose 构建图像并运行容器,因此我的 VM 需要提取所有代码,而我认为它应该只需要图像和然后知道如何运行它们。

那么我认为 Docker Compose 错了吗?我对它的经验很少;我只是想找出能够运行容器的最佳方法,似乎我应该能够在 VM 上做到这一点,而无需将所有源代码下载到该 VM。

最佳答案

您可以使用 docker-compose 并仍然发布单个图像。

我猜API和客户端分别有自己的Docker文件。
所以基本上你有三个选择:

  • 让 docker-compose 通过 build option 构建图像.
  • 只需使用 image option 引用图像即可和
    确保它们是以前构建的。
  • 这样做 docker-compose 将构建这些图像并提供它们
    您在图像选项下放置的名称和标签。

  • 就我而言,它们都是有效的选择。如果你和
    选项二我会写一个小 Makefile 或脚本来确保
    为方便起见,图像已到位。

    关于docker - `docker-compose.yml` 应该在自己的存储库中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55344718/

    相关文章:

    java - Docker、Dockerfile 和在我开始下一个服务之前使用等待

    java - 无法在同一网络中按名称访问 Docker 容器

    php - Nginx无法在Docker中与PHP-fpm对话

    docker - 如何在 Kubernetes 中模拟 "--log-driver=syslog"

    带有 docker-compose 的 Docker 容器主机名

    mongodb - 使用docker mongodb和laravel之间没有连接

    wordpress - 如何在现有 WordPress git 存储库中配置新的 docker-compose.yml 文件?

    django - 通过Nginx代理HTTPS向docker-compose中的gunicorn django提供静态文件

    node.js - 运行 gulp in `docker-compose build`

    docker - 是否可以在 docker 构建期间在 ONBUILD 之前插入步骤?