WebEngine

だらだらと綴る技術系メモ

Vagrant + Ubuntu14.04 でLAMP環境構築

追記(2017.1.7)

  • 久々に見直したところ、step.5の工程が必要ないことに気づきました。必要ない方は飛ばしてもらって結構です。

Step.0 前提条件


Step.1 Vagrant上にUbuntuを導入

ターミナルから作業ディレクトリに移動。なければmkdirでつくります。

Vagrantbox.esから 使えそうなUbuntuを探しましょう。今回はこの

f:id:web-engine:20160618123238p:plain

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 suspendvagrant haltを使います。


Step.2 UbuntuLAMP環境を整える

ぼくもちょっと前まではapachePHPというふうに一個一個入れていたんですが、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を利用しています。


参考サイト