如何将下载的 .box文件添加到流浪汉的可用框列表中?.box文件位于外部驱动器上。
.box
我尝试运行 vagrant box add my-box d:/path/to/box,但是 Vagrant 将路径解释为 URL。
vagrant box add my-box d:/path/to/box
尝试将目录更改为保存 .box的目录
运行 vagrant box add my-box downloaded.box,这样可以避免绝对路径(在 Windows 上?)。
vagrant box add my-box downloaded.box
vagrant box add my-box file:///d:/path/to/file.box
必须是 URL 格式。
F:\PuppetLab\src\boxes>vagrant box add precise32 file:///F:/PuppetLab/src/boxes/precise32.box ==> box: Adding box 'precise32' (v0) for provider: box: Downloading: file:///F:/PuppetLab/src/boxes/precise32.box box: Progress: 100% (Rate: 1200k/s, Estimated time remaining: --:--:--) ==> box: Successfully added box 'precise32' (v0) for 'virtualbox'!
你可以指向流浪汉所在的文件夹,然后将盒子文件复制到相同的位置。然后,你可以运行如下
vagrant box add my-box name-of-the-box.box vagrant init my-box vagrant up
只是检查一下状态
vagrant status
Windows 解决方案:
vagrant box add --name name_of_my_box 'name_of_my_box.box'
vagrant box list
MAC 解决方案:
vagrant box add --name name_of_my_box "./name_of_my_box.box"
首先重命名流浪者文件 那么
vagrant box add new-box name-of-the-box.box vagrant init new-box vagrant up
仅此而已
或者添加下载的框,可以创建一个具有元数据的 json 文件。这样就可以应用一些额外的细节。例如,导入框并指定其版本创建文件:
{ "name": "laravel/homestead", "versions": [ { "version": "7.0.0", "providers": [ { "name": "virtualbox", "url": "file:///path/to/box/virtualbox.box" } ] } ] }
然后使用参数运行 vagrant box add命令:
vagrant box add
vagrant box add laravel/homestead /path/to/metadata.json
只是为了增加对另一个案子的描述。我必须在多台 Ubuntu 机器上安装类似的基于 Vagrant Ubuntu 18.04的配置。使用 vagrant up和 Vagrantfile将 bionic64框下载到一个指定该框的文件夹,然后将文件夹 .vagrant.d/boxes/ubuntu-VAGRANTSLASH-bionic64复制到其他文件夹。
vagrant up
Vagrantfile
.vagrant.d/boxes/ubuntu-VAGRANTSLASH-bionic64