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

时间:2019-03-25 18:55:29

标签: docker docker-compose

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

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

但是那样看来您就无法将图像发布到存储库中,因为Docker Compose会构建图像并运行容器,因此,我认为我的VM只需要提取所有代码即可,图像,然后知道如何运行它们。

所以我认为Docker Compose错误吗?我对此几乎没有经验;我只是想找出能够运行容器的最佳方法,似乎我应该能够在VM上做到这一点,而不必将所有源代码下载到该VM。

1 个答案:

答案 0 :(得分:2)

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

我猜想API和客户端分别具有自己的Docker文件。 因此,基本上,您有三种选择:

  1. 让docker-compose通过build option构建映像。
  2. 只需使用image option和 确保它们是以前建造的。
  3. 两者都做,以便docker-compose将构建这些图像给它们 在图像选项下放置的名称和标签。

就我而言,它们都是有效的选择。如果你去 选项二我会写一些Makefile或脚本来确保 这些图像是为了方便起见。