環境
- VirtualBox 5.1.24
- Vagrant 2.0.4
手順
Boxのリスト表示
ほしいBoxがリストに表示されていないことを確認します。
> vagrant box list
Boxのダウンロード
今回はVagrantCloudのリストで上位にあったものをDLします。
VagrantCloudのBoxリスト
https://app.vagrantup.com/boxes/search
今回使用するCentOS7
https://app.vagrantup.com/centos/boxes/7
以下のコマンドでBoxを追加します。
「https://...
のパスにあるイメージを基に、centos/7
という名前でBoxを追加するよ」という意味だと思ってます。
> vagrant box add centos/7 https://app.vagrantup.com/centos/boxes/7
ちなみにこのイメージをダウンロードする場合、引数add
に続くBox名をcentos/7
以外を指定するとエラーになってしまいました。
というわけでcentos/7
というBox名にしています。
ダウンロードが始まると、プロバイダの選択肢が表示されます。
今回はVirtualBoxを選択します。
1) hyperv
2) libvirt
3) virtualbox
4) vmware_desktop
Enter your choice: 3
ダウンロードが終わったら、下記コマンドでBoxが追加されていることを確認します。
> vagrant box list
centos/7 (virtualbox, 1901.01)
仮想マシンの作成
以下コマンドで仮想マシン用のディレクトリを作成して移動します。
パスはほかのマシンと被ってなければどこでもいい、はず。
> mkdir centos7
> cd centos7
次に、VagrantFIleを作成します。
vagrant init
コマンドを実行し、カレントディレクトリにVagrantFIle(仮想マシンごとの設定ファイル)を作成します。
引数に先ほどダウンロードしたボックス名centos/7
を指定することで、作成されるVagrantFIleにcentos/7
の名前が自動で反映されます。
> vagrant init centos/7
Vagrantfileの編集
いろいろやることはあるかと思いますが、ひとまずSSHでつなげるようにhost-onlyネットワークのIPアドレスをアンコメントアウト→編集しておきます。
今回は192.168.33.30
としています。
# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network "private_network", ip: "192.168.33.30"
そのほかの設定についてはVagrantfile 覚書が詳しいようです。
仮想マシンの起動
以下コマンドで、仮想マシンを起動します。
> vagrant up