自分用の備忘録としてLaravel導入の流れをまとめます。
目次
- 環境
- WSLの準備
- Docker Desktopのインストール
- Laravelのプロジェクト作成
環境
- Ubuntu 20.04
- WSL2
- PHP 7.4.3
- Laravel9
WSLの準備
- Powershellを管理者権限で実行する。
- 下記のコマンドを実行する。
wsl --install
- PCを再起動する。
- 再起動すると ubuntu のターミナルが自動的に立ち上がるのでユーザ名とパスワードを設定する。
Docker Desktopのインストール
- 下記のURLにアクセスし、ダウンロード -> インストールする。
https://www.docker.com/products/docker-desktop/ - 完了したら画面の指示にしたがって windows からログアウト → ログインする(再起動でも OK)。
Dockerの動作確認
-
Docker Desktopを起動する。
-
「Setting(画面上部の ⚙ アイコン)」 -> 「General」 -> 「Use the WSL2 based engine」にチェックを入れる.すでにチェックが入っていてユーザが操作できない状態となっている場合があるが,その場合はそのままで OK。
-
「Setting(画面上部の ⚙ アイコン)」 -> 「Resources」 -> 「WSL INTEGRATION」の Enable Integration ... にチェックを入れ,「Ubuntu 20.04」のトグルをオンにする。
-
下記のコマンドを実行し, docker のバージョンが表示されれば準備完了。
docker -v
Laravelプロジェクト作成
コマンド実行してプロジェクトを作成する。
下記コマンドでプロジェクトのフォルダができる。PROJECT_NAME
部分がプロジェクト名となる。
作成された PROJECT_NAME
フォルダに必要なファイルが全て含まれている。
curl -s https://laravel.build/PROJECT_NAME | bash
_ _
| | | |
| | __ _ _ __ __ ___ _____| |
| | / _` | '__/ _` \ \ / / _ \ |
| |___| (_| | | | (_| |\ V / __/ |
|______\__,_|_| \__,_| \_/ \___|_|
Warning: TTY mode requires /dev/tty to be read/writable.
Creating a "laravel/laravel" project at "./laratter"
Installing laravel/laravel (v8.6.2)
- Downloading laravel/laravel (v8.6.2)
- Installing laravel/laravel (v8.6.2): Extracting archive
Created project in /opt/PROJECT_NAME
> @php -r "file_exists('.env') || copy('.env.example', '.env');"
Loading composer repositories with package information
Updating dependencies
...
権限の変更
この方法でプロジェクトを作成するとエディタで操作する場合に権限で引っかかる場合があるので権限を変更する。
sudo chmod -R 777 PROJECT_NAME
起動
仮想コンテナを立ち上げる。
cd PROJECT_NAME
./vendor/bin/sail up -d
動作確認
ブラウザでlocalhost
にアクセスし、下記画面が表示されればOK。
終了時
仮想マシン(コンテナ)を終了させる場合は以下のコマンドを実行する。
コンテナが立ち上がっていると他のアプリケーションが立ち上がらなくなることがあるため,開発が終わったら下記コマンドで終了させること。
./vendor/bin/sail down
エラーが出たら
PCを再起動
なんか解決する時あるよね。
Docker Desktopのバージョンアップ
Docker Desktop を以前からインストールしていた場合,バージョンが古いと起動しない場合はあるので最新バージョンにアップデートを行う。
ファイヤーウォールを無効化する
途中でエラーが出る場合はファイヤーウォールで必要なファイルのダウンロードができていない場合がある。その場合は一旦ファイヤーウォールを無効化して、再度プロジェクト作成コマンドを実行する。
M1 の Mac で ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries が出る
エディタなどでdocker-compoes.ymlを開き,下記を追加する,
platform: "linux/x86_64"
追記場所はこのへん.
mysql:
image: "mysql:8.0"
platform: "linux/x86_64"
参考:https://neoighodaro.com/posts/3-running-laravel-and-docker-on-the-apple-mac-m1
いけてそうだけどブラウザで表示できない
アクセスするときの URL を https://localhost
から http://localhost
に変更
まとめ
以上、私のLaravel環境開発の流れをまとめてみました。
初心者の方でも一つ一つ丁寧にやればできると思います。