在Vagrant中安装Docker

3
我正在尝试在vagrant box中安装docker。我按照docker网站上的步骤操作,但是当我在通过git下载的docker/目录中运行vagrant up时,出现以下错误信息:“以下Vagrantfile中存在语法错误。语法错误消息如下:”
/docker/Vagrantfile:146: syntax error, unexpected ':', expecting kEND
    override.vm.synced_folder ".", "/vagrant", disabled: true"

我该如何解决这个问题,以便能够连接到vagrant虚拟机?如果运行命令“vagrant ssh”,我会得到相同的消息。

5个回答

6

3

看起来你使用的是旧版本的Vagrant。尝试升级。 这里可以帮助你。


2

这个示例的vagrant文件将为您安装Docker版本1.3.2。如果您不关心下载哪个版本的Docker,可以省略d.version。

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "hashicorp/precise64"

  config.vm.provision "docker" do |d|
      d.version = "1.3.2"
  end 
end

当我尝试安装docker 1.11.0时,出现了错误:“无法找到软件包lxc-docker-1.11.0”。 - KiwenLau

1

1
我的经验:
我在代理后面,所以我必须在vagrant中进行配置。首先,我安装了设置代理的插件:
vagrant plugin install vagrant-proxyconf

然后我完成了上面的示例:
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "hashicorp/precise64"
  config.yum_proxy.http = "http://proxy.internal.lcl:8080/"
  config.proxy.http     = "http://proxy.internal.lcl:8080/"
  config.proxy.https    = "http://proxy.internal.lcl:8080/"
  config.proxy.no_proxy = "localhost,127.0.0.1"  
  config.vm.provision "docker" do |d|
      d.version = "latest"
  end 
end

最后,我不得不通过以下Shell命令绕过代理来使用Docker:
export NO_PROXY="/var/run/docker.sock"

结果:

root@precise64:~# docker version
Client version: 1.5.0
Client API version: 1.17
Go version (client): go1.4.1
Git commit (client): a8a31ef
OS/Arch (client): linux/amd64
Server version: 1.5.0
Server API version: 1.17
Go version (server): go1.4.1
Git commit (server): a8a31ef

希望对您有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接