はじめに
ここでは以下の最短手順を紹介する。作業環境は、全てターミナル or コマンドプロプトで行う。
- Vagrantのセットアップ
- LAMP環境のインストール
- ブラウザで表示を確認
前提
以下がマシンに既にインストール済みであること。
僕の環境は、virtualBox(5.0.32)、Vagrant(1.9.1)だが、最新バージョンでも手順は変わらないはず。
- VirtualBox
- Vagrant
1. Vagrant Setup
ここでは、Ubuntsu 16.04を使う。
Ubuntsu 16.04のBoxを追加
vagrantにUbuntsu 16.04を登録。
vagrant box add xenial64 https://atlas.hashicorp.com/ubuntu/boxes/xenial64/versions/20160521.0.0/providers/virtualbox.box
Boxに追加されているか確認
Ubuntsu 16.04が追加されていたら、xenial64 (virtualbox, 0)が出力される。
vagrant box list
仮想環境を構築したいディレクトリへ移動
cd なんとか
ディレクトリをvagrantで初期化
仮想環境を構築するディレクトリへ移動が終わったら、Ubuntsu 16.04で初期化。(フロントエンドでいう、npm initみたいなイメージ)
vagrant init xenial64が完了すると、Vagrantfileという設定ファイルが生成されていることが確認できる。
vagrant init xenial64
OSを起動する
その後、Vagrantfileと同じディレクトリで、vagrant upコマンドを打つと、Vagrant上のUbuntsuOSが立ち上がる。
vagrant up
これでPCの中にUbuntsuの仮想環境ができた。
しかし、この状態はOSが立ち上がっただけで、中身は空っぽ。(初めて買ったばかりのPCに、chromeやAdobeが入っていないのと同じイメージ)
このままでは、Webサーバーとしては使えないため、ApacheやPHP, MySQL等(LAMP環境)をインストールする。
2. LAMP環境の構築
ここからは立ち上げたUbuntsuで作業をする。
Vagrantfileがあるディレクトリまでターミナル or コマンドプロンプトで移動
sshログイン
vagrant ssh
LAMP(Apache, MySQL, PHP)環境をインストール
MySQLのパスワードを聞かれるので、任意のパスワードを指定。
sudo apt-get install tasksel
sudo tasksel install lamp-server
CURLとPHPの拡張をインストール
sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext
sudo apt-get install zip
PHPの拡張を有効化
sudo phpenmod mcrypt
sudo phpenmod mbstring
sudo a2enmod rewrite
Apacheの再起動
sudo systemctl restart apache2
ここまでやると、LAMP環境が構築できた。設定の更新するため、sudo systemctl restart apache2を行う。いったんexitコマンドでsshログインから抜ける。
ブラウザからアクセスして確認する。
そのままでは、ブラウザから確認できない。
Vagrantfileを編集する
Vagrantfileの以下をコメントアウトして、ブラウザからのアクセスを許可する設定に変更
# config.vm.network "private_network", ip: "192.168.33.10"
↓ コメントアウト
config.vm.network "private_network", ip: "192.168.33.10"
Vagrantfileを更新したので、更新を反映させる
vagrant reload #Vagrantの設定をリロード
以下でもOK。
vagrant halt #Vagrant停止
vagrant up #Vagrant起動
ブラウザからhttp://192.168.33.10 へアクセス
成功していたら、以下のようなページが表示される。
