使用带有 Vagrant 的单个 VM 跨多个项目托管 Docker 个容器

Use a single VM with Vagrant to host Docker Containers across multiple projects

我有两个单独的 projects/src/code 存储库,使用 Vagrant 在 docker 容器中 运行 一个应用程序。

我将 Vagrant 与 CentOS7 主机虚拟机一起使用来托管 docker 个容器 (https://www.vagrantup.com/docs/docker/basics.html)。我在每个项目中都使用了 CentOS7 VM Vagrantfile (Vagranfile.host) 的副本。

- proj1/
-- Vagrantfile
-- Vagrantfile.host
- proj2/
-- Vagrantfile
-- Vagrantfile.host

每个 Vagrantfile 指向 Vagrantfile.host 以启动 CentOS VM 来托管 Docker 个容器。

两个项目之间的唯一区别(对于这个问题有效)是 proj1 中的 Vagrantfile 指向与 [=17= 中的不同的 docker 图像].

当我在每个项目文件夹中执行 vagrant up 时,每个项目文件夹都会创建自己的 CentOS7 VM 实例,因此我最终 运行 安装了两个独立的 VirtualBox VM。

有没有办法更改一个或两个 Vagrantfile 文件,以便我最终只启动一个 VM,而容器都 运行 在同一个 VirtualBox VM 中?

开始使用了。不是我想要的方式,而是为以后发现此问题的任何人记录。将 Docker Vagrantfile 指向其 linux 父项的相同 Vagrantfile.host。

   - proj1/
   -- Vagrantfile --> ./Vagrantfile.host
   -- Vagrantfile.host
   - proj2/
   -- Vagrantfile --> ../proj1/Vagrantfile.host