Vagrant + Ubuntu14.04 でLAMP環境構築
追記(2017.1.7)
- 久々に見直したところ、step.5の工程が必要ないことに気づきました。必要ない方は飛ばしてもらって結構です。
Step.0 前提条件
- VirtualBoxインストール済み
- Vagrantインストール済み
- WindowsならばPuTTY or TeraTermインストール済み
Step.1 Vagrant上にUbuntuを導入
ターミナルから作業ディレクトリに移動。なければmkdir
でつくります。
Vagrantbox.esから 使えそうなUbuntuを探しましょう。今回はこの
https://github.com/kraksoft/vagrant-box-ubuntu を使用(MITライセンス)。Copyのボタンを押して、ターミナル(コマンドプロンプト)に戻ります。
vagrant box add ubuntu-test https://github.com/kraksoft/vagrant-box-ubuntu/releases/download/14.04/ubuntu-14.04-amd64.box
と打ち込んで実行。Copyボタンを押しているので、URL部分はコピーの方が早いです。
ubuntu-testの部分はボックスの名前ですが、自分のわかるものであれば好きな名前で
構いません。2、3個であれば問題ないですが、多くなってくると混乱します。間違えて違うボックスを
消してしまったりしないようにしましょう。
ボックスが追加されているか確認するには
vagrant box list
と打ち込みます。ubuntu-testと追加されていれば成功です。
続いて、作業用のディレクトリを作成し、その中に移動します。もちろん自分のつけたい名前でオーケイです。
mkdir ubuntu-test cd ubuntu-test
そこまでできたら
vagrant init ubuntu-test
と入力。ubuntu-testの部分は自分のつけたディレクトリ名を打ち込ましょう。
ディレクトリ内にVagrantfileというファイルが作成されれば成功です。
次に、このVagrantfileを編集します。好みのエディタで開いて
config.vm.network "private_network", ip: "192.168.33.10"
という部分の#を外しましょう。
たいていは192.168.33.10だと思いますが、もし、ipの数字部分が違う人がいればメモするなり
しておきましょう。
いよいよ仮想マシンを起動します。起動するには、Vagrantfileが存在するディレクトリ下で
vagrant up
と入力するだけです。起動したか確認するには
vagrant status
と打ち込みます。runningと表示されれば無事起動しています。
Macならばvagrant ssh
を使い、WindowsならばPuTTYかTeraTarmを
使って仮想マシンに接続します。このとき、ipの番号が書かれていたものと違っていた人は、書かれていた
番号を使って接続しましょう。
接続に成功するとユーザ名を聞かれます。ユーザ名はデフォルトでvagrant
となっています。
次にパスワードを聞かれますが、パスワードも同じくvagrant
です。
無事入ることができたら少し休憩でもしましょう。
仮想マシンを切断するにはexit
仮想マシンを止めるにはvagrant suspend
かvagrant halt
を使います。
Step.2 UbuntuにLAMP環境を整える
ぼくもちょっと前まではapache、PHPというふうに一個一個入れていたんですが、ubuntu では少量のコマンドでLAMP環境を整えることができることを最近知りました。ちょっとショック。
sudo apt-get update sudo apt-get install tasksel sudo tasksel install lamp-server
途中MySQLのrootユーザのパスワード入力を求められるので、入力します。
インストールが終わったら、次のコマンドで本当に入っているか確認します。
apache2 -v php -v mysql --version
Step.3 apache2の動作確認
sudo /etc/init.d/apache2 start
とコマンドを入力し、ブラウザのアドレスバーに192.168.33.10
を打ち込みます。It works!と書かれたページが表示されれば
apache2が問題なく動作している証拠です。
ちなみに終了するときは
sudo /etc/init.d/apache2 stop
です。
Step.4 MySQLの動作確認
mysql -u root -p
と入力して、インストールのときに入力したパスワードを打ち込みます。
ログインできればMySQLのインストールにも成功しています。
Step.5 PHP動作確認の前に
※ step.5は別にやらなくても良いです
ただ、これをやっておくと、mac上から仮想環境ををいじれるようになります。
仮想マシンのapacheが探索するのは/var/www/htmlです。 いちいちsudoを打っていてはたまらないのでシンボリックリンクを作成します。シンボリックリンク とはターミナル上のショートカットのようなものです。
やり方としては、最初に/var/www/に移動して、存在するhtmlを削除します。
追記:これもいらない。htmlを削除する必要はありません。シンボリックリンクを張るだけで良いです。
cd /var/www sudo rm -r html
次に/vagrant上にhtmlディレクトリを作成し、シンボリックリンクをつくります。
mkdir html sudo ln -s /vagrant/html /var/www/html
さあ、いよいよ最後にPHPの動作チェックをして終わりです。
Step.6 PHPの動作確認
htmlディレクトリ(つくってない方は /home/vagrant下で良いです)にもぐって、適当なPHPファイルを作成します。今回は test.phpというファイルを作成しました。
<?php echo "Hello,PHP!"; ?>
続いて以下のコマンドでPHPサーバを立ち上げます。
php -S 192.168.33.10:8000
ポート番号(:8000の部分)は予約されたものでなければ好きな番号で いけるはずです。
ブラウザから
192.168.33.10/test.php
でアクセスして表示されれば、きちんと動作しています。
これまでの過程が面倒くさいと思った方
上はScotch Box、下はchefを利用しています。