Ubuntu18.04にLaravel5.5(LTS版)をインストールする方法
Ubuntu18.04にてLaravel5.5 LTS版をインストールする説明をしていきます。
2018年11月の時点で Laravel の最新バージョンは 5.7 との事ですが、LTS版の方がセキュリティ更新期限が2020年8月と長期に渡ってサポートしてくれるので、ここでは 5.5 を前提としてインストールを行ないます。
【最新版のPHPのインストール】
PHPのインストールはターミナルにて下記コマンドで簡単に行なえます。
$ sudo apt install php
しかしこのやり方だと、2018/11/20時点の最新版であるバージョン『 7.2.12 』よりも若干古いバージョンがインストールされます。機能的にはほぼ差異は無いのですが、やはり最新版を使いたい方もいらっしゃると思うので、PPA( Personal Package Archive )コマンドを使ってインストールします。
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt update
レポジトリを設定し、アップデートチェックを行なってから、改めてPHPインストールコマンドを実行します。下記コマンドにてPHP及び付属のパッケージ類を合わせてインストールして下さい。
$ sudo apt install php7.2 php7.2-common php7.2-cli php7.2-fpm
PHP7.2と同時にいくつかのパッケージも合わせてインストールしていますが、それぞれの詳細は下記になります。
・php7.2-common: ドキュメントやサンプル及び共通機能(詳細はコチラ)
・php7.2-cli: PHPをターミナルで編集する際のツール(詳細はコチラ)
・php7.2-fpm: サーバー側でのHTMLの埋め込み機能(詳細はコチラ)
インストールが完了したら、今度は『 Composer 』をインストールしましょう。
【Composerのインストール】
Laravel プロジェクトの作成において、『 Composer 』は大変便利なパッケージ管理システムです。これさえインストールしてしまえば、Laravel 問わず様々なPHPプロジェクトに必要なソフトウェアやライブラリを提供してくれます。
では、コチラの Composer のサイトに行きましょう。
トップページの『 ダウンロード 』ボタンをクリックし、ダウンロードページに移動して下さい。
Composer のダウンロードとインストールですが、赤枠で囲ったターミナルコマンドをそのままコピペして実行すれば良いだけです。まとめてコピペでも構いませんが、1行ずつしていく方が良いでしょう。
各行をコピーしてターミナルに貼り付けて実行していって下さい。ちなみに、各コマンドの先頭に『 php 』と入力されているので、当然ながらPHPを予めインストールしていないと駄目です。
4行のコマンド実行したら無事に Composer がインストール出来ていると思います。が、早速インストールされているかバージョンを確認しようと、
$ composer dump-autoload --version
と入力しても、「 composer コマンドが見付かりません」と出てしまいます。
実は composer コマンドを使える様にするには、『 composer.phar 』のアーカイブファイルを下記パスに移動する必要があります。
/usr/local/bin/composer
なので管理者権限にて、下記コマンドでアーカイブファイルを移動しましょう。
$ sudo mv composer.phar /usr/local/bin/composer
これで composer コマンドが使用可能になると思います。改めて上記のバージョン確認コマンドを実行してみて下さい。
上記の様にバージョンが表示されればインストール完了です。
【Laravel 5.5 プロジェクトの作成】
今度は Laravel 5.5 のインストールとプロジェクト作成を同時に行ないます。下記 composer コマンドで実行して下さい。
$ composer create-project --prefer-dist laravel/laravel プロジェクト名 "5.5.*"
プロジェクト名は何でも構いません。ここでは例として『hogehoge』としましょう。
$ composer create-project --prefer-dist laravel/laravel hogehoge "5.5.*"
最後の『 "5.5.*" 』がポイントですね。これで、5.5の最新バージョンにてプロジェクトを作成出来ます。
インストールとプロジェクトの作成はそれなりに時間が掛かりますので、じっくり待ちましょう。と、思いきや...
Your requirements could not be resolved to an installable
set of packages.
Problem 1
- laravel/framework v5.5.9 requires ext-mbstring * ->
the requested PHP extension mbstring is missing from
your system.
.......
恐らく上記の似た様なエラーがズラッと表示されると思います。要は、PHPエクステンションのmbstringがありません、という事なので、PHP7.2用の mbstring をインストールしましょう。
$ sudo apt install php7.2-mbstring
インストールが完了したら再度プロジェクトを作成してみて下さい。すると、
[InvalidArgumentException]
Project directory hogehoge/ is not empty.
のエラーが出ます。1回目のプロジェクト作成にてすでに作り掛けのフォルダがある為、それを削除して下さいという事です。一度該当の『 hogehoge 』フォルダを削除してから再度実行します。すると...
Your requirements could not be resolved to an installable
set of packages.
Problem 1
- phpunit/phpunit 6.5.9 requires ext-dom * ->
the requested PHP extension dom is missing from
your system.
.......
今度はPHPエクステンションdomがありません、との事で、dom も追加でインストールしましょう。
$ sudo apt install php-xml
php-xml をインストールが完了したら再度プロジェクトを作成してみて下さい。今度こそプロジェクトが作成出来ると思います(汗)。
Package manifest generated successfully.
と表示されれば無事作成完了です。
【Laravel 5.5 の起動】
では最後に、実際に Laravel プロジェクトが作成されているかの確認と、起動を行ないましょう。
$ cd hogehoge
と入力して hogehoge フォルダに移動し、ls コマンドを打ってみて下さい。
『 app 』フォルダや『 composer.json 』ファイル等が表示されれば正常に作成されています。
実際に下記コマンドにて Laravel を起動してみましょう。
$ php artisan serve
これが Laravel のURLとなりますので、ブラウザを開いてこのURLで表示してみて下さい。
無事に Laravel のトップページが表示されればOKです。
以上です。お疲れ様でした。