前回構築したWSL/LAMP環境にLaravelをインストールし、動作させてみましょう。
前回の記事はこちら:WSLにLAMPを構築する(2018秋)
環境
もの | バージョン |
---|---|
ホストOS | Windows10 Home バージョン:1803 OSビルド:17134.320 |
WSL OS | ubuntu 18.04 LTS |
(L)AMP | apache2:Apache/2.4.29 (Ubuntu) MySQL:mysql Ver 8.0.12 php:PHP 7.2.10-0ubuntu0.18.04.1 |
laravel | 5.5(LTS) |
laravelは最新の5.6/5.7がありますが、今回はLTSである5.5を採用します。
下準備
laravel5.5をインストールするためには、以下のものが必要です。
- php >=7.0.0
- OpenSSL PHP拡張
- PDO PHP拡張
- Mbstring PHP拡張
- Tokenizer PHP拡張
- XML PHP拡張
参考:https://readouble.com/laravel/5.5/ja/installation.html
WSL(ubuntu)にインストールしていきましょう。現在インストールされているphp関連モジュールは以下の通りです。
# dpkg -l | grep php
ii libapache2-mod-php 1:7.2+60ubuntu1 all server-side, HTML-embedded scripting language (Apache 2 module) (default)
ii libapache2-mod-php7.2 7.2.10-0ubuntu0.18.04.1 amd64 server-side, HTML-embedded scripting language (Apache 2 module)
ii php 1:7.2+60ubuntu1 all server-side, HTML-embedded scripting language (default)
ii php-common 1:60ubuntu1 all Common files for PHP packages
ii php-mysql 1:7.2+60ubuntu1 all MySQL module for PHP [default]
ii php7.2 7.2.10-0ubuntu0.18.04.1 all server-side, HTML-embedded scripting language (metapackage)
ii php7.2-cli 7.2.10-0ubuntu0.18.04.1 amd64 command-line interpreter for the PHP scripting language
ii php7.2-common 7.2.10-0ubuntu0.18.04.1 amd64 documentation, examples and common module for PHP
ii php7.2-json 7.2.10-0ubuntu0.18.04.1 amd64 JSON module for PHP
ii php7.2-mysql 7.2.10-0ubuntu0.18.04.1 amd64 MySQL module for PHP
ii php7.2-opcache 7.2.10-0ubuntu0.18.04.1 amd64 Zend OpCache module for PHP
ii php7.2-readline 7.2.10-0ubuntu0.18.04.1 amd64 readline module for PHP
# php -m | egrep "openssl|mysqlnd|mbstring|tokenizer|xml"
libxml
mysqlnd
openssl
tokenizer
mbstring以外は揃ってそうなので、php-mbstringを追加しましょう。
# apt install php-mbstring
もっかい確認。
# php -m | egrep "openssl|mysqlnd|mbstring|tokenizer|xml"
libxml
mbstring
mysqlnd
openssl
大丈夫かな。まぁだめならあとで戻ってきましょう。
続いて、laravelをインストールするためのcomposerを用意します。
参考:https://getcomposer.org/download/
cd /usr/local/bin
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
パスを通すため、最初に/usr/local/binにcdしています。
コマンド実行の際に composer.phar はいちいち叩くのが面倒なので、composerのみで実行できるようにしています。
laravelインストール
準備は整いました。いよいよlaravelをインストールします。
インストールする対象のディレクトリに移動し、手順に従いインストールを進めます。
参考:https://readouble.com/laravel/5.5/ja/installation.html
# cd /mnt/d/d_ExtDisk/dev1
# composer global require "laravel/installer"
rootでcomposer叩くなって怒られてますが、今回は全部rootでやるので無視します。
# apt install php-zip
→ php-zipがインストールされる
# php -m | grep zip
zip
composer 再チャレンジ。
# composer global require "laravel/installer"
→ 無事インストールされました。
そのまま、laravelをインストールします。
また怒られた。phpunitのためにphp-domが必要らしい。
# apt install php-dom
# php -m | grep dom
dom
リトライ!
→ 無事 blog/ ディレクトリが作成されて、laravel5.5.x(今回は5.5.28)がインストールされました。
テストサーバを起動し、接続できることを確認します。
# cd blog
# php artisan serve &
Laravel development server started: <http://127.0.0.1:8000>
localhost:8000でlaravelのスタート画面が表示され、CLIにはアクセスログが標準出力へ流れることを確認できたら、動作確認OKです。ここまできたら、あとはlaravel本を購入してガシガシ勉強&開発していきましょう。
Todo
- phpのテストサーバではなくapacheで動作させる
- https化する