与Docker提供商的stream浪者不共享文件夹

目标

我试图让新的Docker提供商启动并运行Vagrant。 目标是一次性设置。 第一次运行时,我需要build立和configuration多个docker集装箱。 在晚些时候运行vagrant reloadvagrant up时,我希望启动虚拟机而不重builddocker集装箱。 相反,旧的应该开始使用。

问题

我需要在我的docker容器中的共享文件夹。 在我的Dockerfile中引用该文件夹时,会导致错误,因为它根本不共享。

细节

我有以下Vagrantfile

 # -*- mode: ruby -*- # vi: set ft=ruby : VAGRANTFILE_API_VERSION = "2" Vagrant.configure("2") do |config| config.vm.synced_folder ".", "/vagrant1" config.vm.define "myproject/base" do |v| v.vm.synced_folder ".", "/vagrant2" v.vm.synced_folder ".", "/vagrant3", docker__exact: true v.vm.provider "docker" do |d| d.build_dir = "./docker" end v.vm.provision "shell", inline: "echo Hello" end end 

而且被引用的Dockerfile就像下面这样简单:

 FROM ubuntu:precise RUN ls -la / CMD ["/bin/bash"] 

ls -la的输出显示没有共享文件夹。 无论是/vagrant1/vagrant2还是/vagrant3

另外,如果我把一个ADD命令从/vagrant1/vagrant2/vagrant3复制的东西,我得到一个错误消息暗示,没有这样的path。

附加信息

我的目录结构是这样的:

 | vagrant | -- docker | -- | -- base | -- | -- extension | -- shared | -- | -- for | -- | -- bar 

首先,需要build造基础容器。 该扩展使用基地作为起点。 两者都需要共享文件夹中的文件夹来ADD Dockerfile中的文件。

我怎样才能正确configuration我的方块?