いつ頃からか、 vagrant up
時や vagrant box outdated
で 404 エラーが出るようになっていたので、 対処しました。
エラー内容
以下のようなエラーが出ていました。
Checking if box 'bento/ubuntu-16.04' is up to date...
There was a problem while downloading the metadata for your box
to check for updates. This is not an error, since it is usually due
to temporary network problems. This is just a warning. The problem
encountered was:
The requested URL returned error: 404 Not Found
If you want to check for box updates, verify your network connection
is valid and try again.
metadata_url の書き換え
vagrant box update - Fails with 404 Not Found error にあるように metadata_url
の atlas.hashicorp.com を vagrantcloud.com に書き換えれば良いようです。
metadata_url
には https://atlas.hashicorp.com/bento/ubuntu-16.04?access_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
のように書かれていて、末尾に改行はついていませんでした。
改行がついているとエラーになるようなので、エディタではなく echo -n
で直接書き込みました。
$ echo -n 'https://vagrantcloud.com/bento/ubuntu-16.04' > ~/.vagrant.d/boxes/bento-VAGRANTSLASH-ubuntu-16.04/metadata_url
vagrant box update など
書き換えたことによって vagrant box outdated
や vagrant box update
がエラーなく実行できるようになりました。
$ vagrant box outdated
Checking if box 'bento/ubuntu-16.04' is up to date...
A newer version of the box 'bento/ubuntu-16.04' for provider 'virtualbox' is
available! You currently have version '201801.02.0'. The latest is version
'201802.02.0'. Run `vagrant box update` to update.
vagrant での変更箇所
vagrant 自体の参照先は Convert atlas references to vagrant cloud · hashicorp/vagrant@5f955c3 で変更されているようでした。
(おまけ) vagrant share の話
差分をみていて知ったのですが、 Vagrant Share も今は ngrok を使うようになっているようで、 brew cask install ngrok
などで ngrok をインストールしておく必要があるようです。
Disqus Comments