我即将使用vagrant自动部署应用程序。此应用程序需要安装在特定的内核版本上,因此我选择并尝试在Atlas中使用该框的特定版本。但是,似乎无论我使用哪个特定版本,我总是得到最新版本,这会破坏我的应用程序。我做了一个快速测试:
wget 'https://atlas.hashicorp.com/ubuntu/boxes/trusty64/versions/20170517.0.1/providers/virtualbox.box' -O v20170517.0.1.box
wget 'https://atlas.hashicorp.com/ubuntu/boxes/trusty64/versions/20170517.0.0/providers/virtualbox.box' -O v20170517.0.0.box
md5sum *.box
date
5a6660d4e37a3af79b70af7f13a69f3b v20170517.0.0.box
5a6660d4e37a3af79b70af7f13a69f3b v20170517.0.1.box
Thu Jun 1 14:49:46 CEST 2017
所以下载的文件确实相同。如果这种行为是故意的,我没有找到任何证据。这是一个错误吗?有没有办法将盒子版本固定为真实的?
更新
使用vagrant box add
仍会为每个版本下载相同的框:
$ vagrant box add ubuntu/trusty64 --box-version 20170517.0.0
$ vagrant box add ubuntu/trusty64 --box-version 20170517.0.1
$ ls ~/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64/
20170517.0.0 20170517.0.1 metadata_url
$ diff -Nqr ~/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64/20170517.0.*
$ echo differences would be listed above if there were any
答案 0 :(得分:1)
您可以使用以下命令安装特定的盒子版本
$ vagrant box add ubuntu/trusty64 --box-version 20170517.0.1
您可以查看vagrant box add
的{{3}}
fhenri@machine:~/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64$ diff -Nqr 20170418.0.0 20170307.0.0/
Files 20170418.0.0/virtualbox/Vagrantfile and 20170307.0.0/virtualbox/Vagrantfile differ
Files 20170418.0.0/virtualbox/box-disk1.vmdk and 20170307.0.0/virtualbox/box-disk1.vmdk differ
Files 20170418.0.0/virtualbox/box.ovf and 20170307.0.0/virtualbox/box.ovf differ