我可以使用Docker Compose直接configurationVagrant吗?
我有一个Vagrant文件,它只启动一个基本的Ubuntu服务器,然后依靠一个shell脚本来进行configuration。 而这个shell脚本只是关于安装Docker和Docker Compose来设置我有的各种容器。
使用shell脚本来做到这一点是否合理? 还是有办法告诉Vagrant直接configurationDocker Compose? 我不知道Vagrant中现有的Dockerconfiguration器有多不同。
最近我提出了同样的问题,我创build了一个安装docker-compose的stream浪租客插件,并提出了使用它的docker。 要使用它:
- 安装插件:
vagrant plugin install vagrant-docker-compose
-
将以下行添加到您的Vagrant文件中。
config.vm.provision :docker config.vm.provision :docker_compose, yml: "/vagrant/docker-compose.yml", rebuild: true, run: "always"
有关完整的示例,请参阅https://github.com/leighmcculloch/vagrant-docker-compose
看来,从stream浪汉1.7.2开始,并没有通过Docker Provisioner直接支持这种操作。 提供者也没有提到它。 stream浪文档:Docker供应 , stream浪文档:Docker命令
我的猜测是这个版本的Vagrant维护者在与Docker提供者一起使用时感觉到Vagrantfile提供了类似的行为。 这也许可以解释为什么在用Docker Composereplace之前,他们没有冒险添加对Fig的直接支持。
我发现使用Docker with Vagrant需要你find使用你自己find最合适的工具的正确组合。 例如,您可能会发现使用Docker文件和Docker命令(如docker)比尝试将该逻辑实现到Vagrantfile中更直观。 另外,你可以尝试一个Dockerfiles的混合体,并使用Vagrant来引用Dockerfiles,Dockerfile会为你提供Dockerfile中的Docker逻辑,而使用正常的Vagrantfile构build“编排”。
这可能是这样的:
-
使用非常简单的Vagrant Docker提供程序configuration,依赖于
Dockerfile
的一切使用
d.build_dir = "."
引用一个Dockerfile
-
使用Vagrant中的Dockerconfiguration程序来启动一切
vagrant up --provision-with docker
- Docker的图像是“selenium / standalone-firefox:3.4.0-chromium”,它包含Firefox和Chrome驱动程序吗?
- 希望使用相同的主机和端口进行ssh会话
- 是否build议在单个节点上运行docker swarm?
- Traefik:让我们encryption+其他证书
- docker-ce:取决于:libseccomp2(> = 2.3.0),但是要安装2.2.3-3ubuntu3
- Docker服务无法在CentOS7上启动应用程序容器引擎
- 如何在Docker容器中运行无头浏览器testing
- net :: ERR_CONTENT_LENGTH_MISMATCH在docker云上的angular度2上
- 运行Ubuntu容器的RPI docker