##はじめに
Windows OSにて、ドットインストールのローカル開発環境【Windows編】を実施し、
vagrant upを実施した場合にエラーが発生し、前に進めず悩んでいるという方に向けて対処法を記述いたします。
構築手順を知りたい方は以下の記事で、開発環境の構築の流れをご紹介しておりますので、ご覧ください。
👉初めてWindowsローカルに開発環境を構築する人の為の記事【構築編】
##環境
- OS: Windows8.1
- VirtualBox version -5.1.8
##目次
1. vagrant upでエラーとなる原因
2. そもそもvagrantとは?
3. 対処法
4. version違いでのvagrant upでのエラー
5. なぜうまくいかなかったか?
##vagrant upでエラーとなる原因
vagrant upとはサーバーOS^1を立ち上げる為のvagrantのコマンドです。
先に結論を申し上げますと、ドットインストールで使用しているvagrantのversion -1.8.6では対応していないことが原因(古い)でvagrant upによるサーバーOS1の立ち上げがうまくいきません。
- vagrantのversionは1.9.6以降を使用します
##そもそもvagrantとは?
vagrantとは、一言でいうとホストOS2からサーバーOS1を操作するためのツールです。
以下のように図でまとめてみました。
また以下のサイトが詳しく解説されていますので、こちらもご参照ください。
##対処法
ドットインストール内のバージョン情報に記載されているvagrant1.8.6でvagrant upをすると以下のようなエラーメッセージが表示されます。(【構築編】ではエラーを回避するためにversion -1.9.6を使用しました)
$vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'bento/centos-6.8' could not be found. Attempting to find and i
nstall...
default: Box Provider: virtualbox
default: Box Version: >= 0
The box 'bento/centos-6.8' could not be found or
could not be accessed in the remote catalog. If this is a private
box on HashiCorp's Atlas, please verify you're logged in via
`vagrant login`. Also, please double-check the name. The expanded
URL and error message are shown below:
URL: ["https://atlas.hashicorp.com/bento/centos-6.8"]
Error: The requested URL returned error: 404 Not Found
エラーの理由はvagrantのversionが関係しています。
最初のうちはこの文言すべてを読み解くのはなかなか至難の業かと思いますが、何かが原因でうまくいかないことは明らかです。
そういう場合にはerrorの文言があるところに着目してみましょう。
##version違いでのvagrant upでのエラー
$vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'bento/centos-6.8' could not be found. Attempting to find and i
nstall...
default: Box Provider: virtualbox
default: Box Version: >= 0
The box 'bento/centos-6.8' could not be found or
could not be accessed in the remote catalog. If this is a private
box on HashiCorp's Atlas, please verify you're logged in via
`vagrant login`. Also, please double-check the name. The expanded
URL and error message are shown below:
URL: ["https://atlas.hashicorp.com/bento/centos-6.8"]
Error: The requested URL returned error: 404 Not Found
上記のようなメッセージが出ますが、「error」という文言はどこに出ているかというと
The expanded
URL and error message are shown below:
URL: ["https://atlas.hashicorp.com/bento/centos-6.8"]
Error: The requested URL returned error: 404 Not Found
ここに着目してみます。
The expanded
URL and error message are shown below:
単語を調べてみると何となく意味が分かってくるかと思いますが、
- expanded➡拡大する、拡張する などの意味
- shown below➡以下に示す などの意味
ここまで読めると後は、
URL and error messageはなにが書いてあるか読めるかと思います。
URLとerror message を見てねってことになります。
では、エラーメッセージを見てみると
URL: ["https://atlas.hashicorp.com/bento/centos-6.8"]
Error: The requested URL returned error: 404 Not Found
このように書かれていますが、これを私なりに日本語化してみると、
ここに書かれたリンク ["https://atlas.hashicorp.com/bento/centos-6.8"]
ありますか?(リクエスト)と質問したら、返事は(リターン)
そんなページは存在しないよ?(error: 404 Not Found)と言いわれてしまいました。
##なぜうまくいかなかったか?
なぜversion1.8.6でうまくいかなかったか?を探っていたところ以下の記事を発見しました。
Qiitaから引用:
久々にローカルのVMインスタンスを作ろうとしたら、これまで使えていたBoxが軒並みcould not be foundに……
これまでBoxを提供していたVagrant Atlasサービスは、Vagrant Cloudというものに移行する(した)ようです。
サービスが移行してしまったため、いくら上のURLで起動しようとしても起動しなかった、というのがわかります。
対処の仕方は、vagrantfileのURL指定を追加するなど、他にももちろんあると思っていますが、私の場合はパッチ3が当たっているversionを使う方が早く解決できるかな?と思い、versionを変えて実行してみた結果、無事にvagrant upでサーバーOsの起動に成功しました。
今回はvagarant upでのエラー発生時の解決策についてご説明させていただきました。
ここまで読んでいただきありがとうございました。
##参考にしたサイト
- vagrantとは
- 仮想環境作成時のvagrant upのエラー 参考ドットインストール
- はてなブログ
- Vagrant Atlasがいつの間にか無くなってたので移行した
- Vagrantのネットワーク周りのあれこれ