今話題のPHPフレームワーク「Laravel」を使ってみた(準備編)
GoogleTrendsで最近のPHPフレームワークの動向を調べるてみると、目に見えて「Laravel」が群を抜いて上昇しています。
弊社ソリューション事業部では主にCodeIgniter3やSymfony、Slim4などのフレームワークを用いてPHP開発を行ってきましたが、この機会に「Laravel」についても一度触れておきたいと思います。
今回は準備編として、インストールと各種機能の確認をしていきます。
筆者の環境
- WSL2
- Ubuntu-20.04
- DockerDesctop-4.3.2
まずはインストール
公式ドキュメントに則ってインストールしていきます。
$ curl -s https://laravel.build/laravel-example | bash
$ cd laravel-example
$ ./vendor/bin/sail up
http://localhost/
問題なくインストールできました!
Sailコマンドって何?
インストール時にも使っている Sail コマンドとは何なのでしょうか。 ドキュメントには下記の記載があります。
とても便利そうなので、細かく見ていきます。
Bashエイリアスの設定
sailコマンドを使うたびに ./vendor/bin/sail を打つのは煩わしいのでエイリアスを設定します。
$ alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail'
$ sail up
wsl起動時に自動的にエイリアスを貼ってくれるよう、 ~/.bashrc にコマンドを追加しておくとなお良いかと思います。
$ diff -u ~/_.bashrc ~/.bashrc
--- /home/xxxxxxx/_.bashrc 2021-12-28 11:34:07.000000000 +0900
+++ /home/xxxxxxx/.bashrc 2021-12-28 11:34:46.360000000 +0900
@@ -116,3 +116,6 @@
. /etc/bash_completion
fi
fi
+
+# add an "sail" alias
+alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail'
Dockerコンテナの起動と停止
up コマンドで docker-compose.yml に定義されたコンテナを起動できます。 また、 -d オプションでバックグラウンド起動することも可能です。$ sail up -d
コンテナの停止は ctrl+c です。
バックグラウンドで起動している場合は、 stop コマンドで停止します。
$ sail stop
DBへのアクセス
本記事と同様にデフォルトセットでインストールした場合、mysqlのコンテナがインストールされています。
各種設定は .env ファイルに記載があります。
初期設定のホストはlocalhostで、ポートは 3306 です。
$ sail mysql -u sail -ppassword
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 35
Server version: 8.0.27 MySQL Community Server - GPL
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| laravel_example |
+--------------------+
2 rows in set (0.00 sec)
テストの実行
test コマンドでテストを実行することも可能です。$ sail test
PASS Tests\Unit\ExampleTest
✓ example
PASS Tests\Feature\ExampleTest
✓ example
Tests: 2 passed
Time: 0.10s
メールのプレビュー
本記事と同様にデフォルトセットでインストールした場合、mailhogのコンテナがインストールされています。
初期設定のホストは mailhog で、ポートは 1025 です。
キャッチしたメールの確認は下記のURLから行えます。
http://localhost:8025
サイトの共有
share コマンドでサイトをGlobalに共有することが可能です。 docker環境で開発する上でプライベートネットワーク外へのサイト共有がコマンド1つで行えるように実装されているのはとてもありがたいですね!$ sail share
Trying to use custom domain:
Thank you for using expose.
Local-URL: host.docker.internal:80
Dashboard-URL: http://127.0.0.1:4040
Expose-URL: http://example.laravel-sail.site:8080
Expose-URL: https://example.laravel-sail.site
さいごに
今回見てきた以外にも、いろいろな機能があります。
次回は実際に簡単なアプリケーションを作っていこうと思います。
この記事を書いた人
-
東京で2年半エンジニアとしての経験を積み、浜松にUターンの後、アーティスへ入社。
ソリューション事業部のWebエンジニアとして、システムの設計・開発・保守・運用からインフラまで幅広く従事している。
フルスタックエンジニア目指して現在も勉強の日々。車が好き。
この執筆者の最新記事
関連記事
最新記事
FOLLOW US
最新の情報をお届けします
- facebookでフォロー
- Twitterでフォロー
- Feedlyでフォロー