【Laravel超基礎】MacでLaravel&docker&MySQLの環境構築

本記事では、Macを利用してLaravelの環境構築からdockerにプロジェクトを乗せてサーバで表示確認できるところまでの手順をまとめていきます!

本記事では最速で簡単にlaravelの動作環境を構築するのが目的であるため、docker,nginx,mysql,phpなどの細かい各種設定ファイルはgitから落としてきて使用します。

この記事の手順をそのまま踏んでいけばほぼほぼそのまま環境構築できるはずです。ターミナルを開いて読み進めていってください。

Docker上で、nginx, php-fpm, MySQLの実行環境(LEMP)を構築して、とにかくLaravel開発環境を構築するまでがゴールとなります。

Homebrewバージョンアップ

Homebrewを用いて必要なものをインストールしていきます。まずはHomebrewをアップデートしましょう。

brew update

Homebrewはmacのパッケージ管理ツールです。brewのおかげでMacはいろんな便利なパッケージを簡単にインストールできます。

Macにbrewが入ってない人は以下からインストールしてください。

https://brew.sh/index_ja

phpインストール

Laravelはphpのフレームワークであるため、まずはMacにphpをインストールする必要があります。

Mac内にphpがインストールされているか確認します。

php -v

下記のようなメッセージが表示されたら既にインストールされているので次の手順に進みます。

PHP 8.2.3 (cli) (built: Feb 15 2023 00:30:25) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.3, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.3, Copyright (c), by Zend Technologies

HomeBrewでインストール可能なphpのバージョンを調べます。

brew search php

指定したいバージョンがあればphpの後ろに@versionで指定し、なければ@以降をつけずに入力で最新バージョンのphpがインストールされます。

brew install php@8.2

インストールが完了したら、インストールしたphpに対してパスを通していきます。パスを通すことによってphpを実行する際に、インストールしたphpを実行してくれるようになります。

whichコマンドで、phpの参照先を確認し、/usr/local/bin/phpが表示されたらパスが通っていません。/usr/local/opt/php@8.2/bin/phpのように、インストールしたバージョン配下が表示されるのがゴールです。

bashの場合

which php

viコマンドで.bash_profileを開いて、phpのパスを通すための記述を追記します。

vi ~/.bash_profile

vi コマンドで.bash_profileを開いたら、aを押してinsertモードになったら、ファイルの最後尾に下記のコマンドを貼り付けてください。@8.2の部分のバージョンは自分がインストールしたバージョンです。

貼り付けたら、[esc]入力でinsertモードを終了し、[:wq]を入力して今の変更を保存して終了します。

export PATH=/usr/local/opt/php@8.2/bin:$PATH

最後にsourceコマンドでbash_profileへの今の変更内容をbash に対して反映します。

source ~/.bash_profile

再度which phpコマンドを実行して、パスが変更されていたら完了です。

zshの場合

.zshrcというファイルに対してパスを通します。存在しない場合には新規に作成して以下の流れで作ってみてください。

//ホームディレクトリに移動
cd

//.zshrcファイルが存在するか確認(現在のディレクトリに存在するファイル一覧が表示される)
ls -al

//.zshrcファイルが存在しない場合には作成
touch ~/.zshrc

//zshrcファイルを開く
//「a」を押してインサートモード,「esc」で編集モード終了入力完了したら「:wq」で保存完了&閉じる
vi ~/.zshrc

//.zshrcファイル内にphpのパスを通す設定を書き込む
//export PATH=インストールしたphpのパス:$PATH
export PATH=/opt/homebrew/opt/php@8.2/bin:$PATH

//ファイルに書き込んだ設定をターミナルに反映させる
source ~/.zshrc

//以下で指定したパスと同じパスが表示されたら完了
which php 

composerインストール

composerは、php用のパッケージ管理ツールです。phpで使用するパッケージやライブラリをインストールする際に必要なり、Laravelのインストールにもcomposerを使用します。

composerのバージョンを確認します。

composer -v

バージョンが表示されなければ、インストールされていないので、brewでインストールを行います。

brew install composer

インストールが完了したら、再度バージョン確認でインストールが完了したことを確認して終わりです。

Laravelインストール

composerを利用してLaravelをインストールします。

composer global require laravel/installer

インストールが完了したら、Laravelのバージョンを確認し、表示されたらインストール完了です。

laravel -v

インストール後にlaravel -vコマンドでcommand not found: laravelが表示されてしまう場合は、phpインストールの時と同じように.zshrcファイルに以下の内容を追記してlaravelのパスを通します。

export PATH="$PATH:$HOME/.composer/vendor/bin"

dockerインストール

dokcerは、アプリケーションの実行に必要な仮装環境を簡単に用意することができるツールです。Laravelで作成したアプリケーションを実行する際に使用します。下記のURLからdockerをインストールしてください。

https://www.docker.com/

インストールが完了したら、下記コマンドでdockerがインストールされていることを確認しましょう。

docker version

Laravelプロジェクト作成

ここでlaravelの実行環境を理解できずとも簡単にプロジェクト作成からアクセス確認までできる手順に入っていきます。

ここからの手順は以下の記事を参考にさせていただきいました。

https://qiita.com/ucan-lab/items/5fc1281cd8076c8ac9f4

Gitからプロジェクトを取得

参考元の記事で紹介しているgitになりますが、以下のgitリポジトリからdocker,laravel,nginx,mysqlの設定ファイルをまとめて取得できます。

https://github.com/ucan-lab/docker-laravel

本記事では、プロジェクトをgit管理する部分までは想定しておりませんので、今回はgitに上がっているプロジェクトをZIPファイル形式でローカルにダウンロードします。

以下の画像で示すように「code」タブを選択してから「DownloadZIP」で対象ファイルをダウンロードします。

ダウンロード後はZIPファイルを解凍しておいてください。

解凍後の実際のディレクトリ構成は以下のようになります。

プロジェクト用ディレクトリ作成

プロジェクトファイルを格納しておくためのディレクトリを作成します。今回はsampleというプロジェクト名で作成していきます。

//ディレクトリ作成
mkdir sample
//sampleディレクトリに移動する
cd sample

Laravelプロジェクト作成

作成したsampleディレクトリ内にgitからダウンロードしてきたファイルの一覧をコピーしてきます。

以下のようなコピーコマンドを使用してdocker-laravel-mainの中身を自分で作成したsampleディレクトリの中にコピーしてきます。

また、コピー元の絶対パスがわからない場合には、そのディレクトリに移動してpwdというコマンドを入力することで確認できます。

//cp -r コピー元のディレクトリ名 コピー先のディレクトリ名
//ダウンロードしてきたdocker-laravel-mainディレクトリの中身を現在のディレクトリであるsampleに全てコピー
cp -r /自分のホームディレクトリ/Downloads/docker-laravel-main/* .

コピーコマンド実行後、sampleディレクトリ内にファイルのコピーが確認できたら、この中にlaravelプロジェクトを作成していきます。

以下のコマンドで、指定したディレクトリ名の下にlaravelのデフォルトのプロジェクトファイル群が作成されます。

//laravel new 作成したいディレクトリ名
laravel new src

実際のディレクトリの中身は以下となり、srcディレクトリ配下にlaravelのプロジェクトが入っているのが確認出来ます。

docker起動

laravelのプロジェクトが作成できたらいよいよdockerを起動して、実際にアクセス確認を行うところまで進んでいきます。

sampleディレクトリ内で以下のコマンドを実行します。これにより、gitから落としてきたdocker関連の設定ファイルを元にdockerの各イメージを作成することができます。

docker-compose up -d

ターミナルでコマンド実行後に処理が完了したら、dockerのイメージ作成が完了し、各コンテナは起動している状態になっていますので、ブラウザで「localhost:80」にアクセスしてみてください。以下のような画面が表示されたら無事環境構築成功です!!

好きなアプリケーションをどんどん作っていってください!

最後に

今回は最速で簡単にlaravelの実行環境を作成する方法について解説してきました。docker関連の設定ファイルについて、細かい部分には一切触れなかったので、別の記事で解説していく予定です。

また、laravelに関する記事もどんどん書いていきますのでぜひそちらもご覧ください。