Dockerの勉強したいから、その前にとりあえずMacでVagrant使い仮想環境を作る

Vagrantをダウンロードしてインストール

https://www.vagrantup.com/downloads.html

インストールしたバージョン:vagrant_1.9.1.dmg

 

VirtualBoxをダウンロードしてインストール

https://www.virtualbox.org/wiki/Downloads

インストールしたバージョン:VirtualBox-5.0.30-112061-OSX.dmg

 

BoxのURLを取得する

Boxは以下のサイトからインストールしたいOSのURLをコピー

http://www.vagrantbox.es/

使うOS:CentOS 7.2 x64 (Minimal, Puppet 4.2.3, Guest Additions 4.3.30)

URL:https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box

 

Boxを追加する

ホームディレクトにVagrantディレクトを作成する(/Users/[ユーザー名]/Vagrant)


$ mkdir Vagrant 
$ cd Vagrant
$ vagrant box add centos https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box

==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'centos' (v0) for provider:
box: Downloading: https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box
==> box: Successfully added box 'centos' (v0) for 'virtualbox'!  成功したみたい

 

boxの確認をする

vagrant box list

centos (virtualbox, 0)

と表示されてればOK

 

box名を変更したくなったとき

box名は、以下のディレクトリです。

ls ~/.vagrant.d/boxes/

 

boxのディレクトリでmvコマンドで変更できる。

centosのあとにバージョンをつけてcentos72にしてみる。

mv ~/.vagrant.d/boxes/centos ~/.vagrant.d/boxes/centos72

そして確認

vagrant box list

centos72 (virtualbox, 0)

 

※ちなみにboxの削除はこれでできる  

vagrant box remove centos72

 

VMの作成 作業ディレクトリを作成(/Users/[ユーザー名]/Vagrant/centos70 ここで作業)

mkdir centos72

cd centos72  

 

初期化コマンドを実行する

vagrant init centos72

Vagrantfileができてる

ls Vagrantfile

 

VMの起動

起動してみる

vagrant up

 

VMへログイン

sshでログイン

vagrant ssh

 

VMのIP設定、共有フォルダ設定

vim Vagrantfile

プライベートIP設定のコメントアウト「#」を削除

config.vm.network “private_network”, ip: “192.168.33.10”

プライベートIP設定のコメントアウト「#」を削除

config.vm.synced_folder “../data”, “/vagrant_data”

 

※windowsの場合はエスケープに注意

http://blog.local-c.com/archives/1308

 

設定を反映させるため、VMを再起動して、もう一度起動してみる

VMを再起動

vagrant reload

 

ちなみにVMの終了は  

vagrant halt

 

IPでログインしてみる

ssh -l vagrant 192.168.33.10

あれ、IPでログインができない。

ifconfig -bash: ifconfig: コマンドが見つかりません

centos7からifconfigが最初から入っていないみたい。

yum install net-tools 

をインストールするか、もしくは以下のコマンドで確認できるみたい

ip a 

でもIPを確認できるみたい

 

IP接続できない理由

10.0.2.15はCentOS6系までは「eth0」が割り当てられていましたが、CentOS7系では「enp0s3」になっていることが原因のようです。

 

このサイトを参考に設定すると接続はできるようになった。

http://qiita.com/ftakao2007/items/b332f562b0ea74e9f97e

ネットワークについて詳しくため、なんか設定が面倒なので、Vagrantのほうではやく対応してもらえないだろうか。