virtualbox + vagrantでの仮想環境の作り方
virtualboxにcentos8をインストールして、開発環境として使う。
a, virtulbox(ホストOSの上にゲストOSを乗せるための仮想マシンのソフト)
b, vagrant(仮装マシンの設定を自動化するツール。ruby製)
1, 一番最初にvirtulbox(ホストOSの上にゲストOSを乗せるための仮想マシンのソフト)をインストール
これが仮想化環境の大元となる!
https://www.virtualbox.org/wiki/Downloads
2, vagrant(仮装マシンの設定自動化ツール)をダウンロード
https://www.vagrantup.com/downloads.html
1 2 |
vagrant --version Vagrant 2.2.9 |
3, centos8のbox(仮想環境イメージ)をダウンロード
1 2 3 4 5 6 7 8 9 10 |
vagrant box add generic/centos8 1) docker 2) hyperv 3) libvirt 4) parallels 5) virtualbox 6) vmware_desktop # と聞かれるので、5) virtualboxを選択。s3からダウンロードしている。 vagrantcloud-files-production.s3.amazonaws.com ==> box: Successfully added box 'generic/centos8' (v3.0.2) for 'virtualbox'! |
4, フォルダ作成して、virtualbox設定のためのvagrant設定ファイル(Vagrantfile)を作る。
1 2 3 4 5 6 7 8 |
mkdir centos8 && cd centos8 # boxリストでボックス名を確認 vagrant box list generic/centos8 (virtualbox, 3.0.2) # 指定したboxのVagrantfileファイルが生成される。 vagrant init generic/centos8 ls Vagrantfile |
5, 生成されたVagrantfileの設定に従って、virtulabox(centos8)のセットアップ
1 2 |
vagrant up ..... |
6, 仮想環境へSSH接続してみる
1 2 3 |
vagrant ssh [vagrant@centos8 ~]$ pwd /home/vagrant |
7, 仮想化環境にwebサーバをインストールして、ブラウザで表示してみる
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# apacheをインストール sudo yum -y install httpd # apache起動(自動起動) sudo service httpd start sudo chkconfig httpd on # ローカルなんでファイアウォールをOFF sudo systemctl stop firewalld sudo systemctl disable firewalld # Webページの内容を設定 cd /var/www/html sudo vi index.html cat index.html # sshを抜けてローカルに戻る exit vi Vagrantfile # コメントインしてipアドレス有効化 config.vm.network :private_network, ip: "192.168.33.10" # 仮想OSを再起動 vagrant reload |
8, 共有フォルダ(ホストOS・ゲストOS)を作る
Vagrantfileファイルで指定する
1 2 3 4 |
# config.vm.synced_folder "../data", "/vagrant_data" config.vm.synced_folder "./html", "/var/www/html" # 仮想OSを再起動 vagrant reload |
これで、Vagrantfileがある所にhtmlフォルダを置くと、自動的に同期される。
9, 自分でbox(vagrantの仮想環境イメージ)を作る。
1 2 3 4 5 |
# Vagrantfileのあるフォルダで実行すると、package.boxファイル(1GB弱)が生成される。 vagrant package # 通常のboxと同様に、vagrantで利用できる。 vagrant box add package.boxのパス |