Laravel Sailで開発環境を構築する
- 作成日 2021.02.10
- Laravel Sail
- Laravel Sail

Laravel Sailを使用して、Laravelの開発環境を構築するまでの手順を記述してます。
環境
- OS CentOS Linux release 7.9.2009 (Core)
- docker 20.10.2
LaravelSail導入
dockerがインストールされている環境が前提となりますが、以下のコマンドと、
# laravel-testという名前のプロジェクトを作成
curl -s https://laravel.build/laravel-test | bash
以下のコマンドを実行するだけで「Laravel」の開発環境を構築することが可能です。
cd laravel-test && ./vendor/bin/sail up
ブラウザから http://プライベートIP or サーバーアドレスにアクセスするとLaravelの開発環境が構築されいることが確認できます。

ブラウザから http://プライベートIP or サーバーアドレス:8085にアクセスすると、メール確認用のMailHogも構築されています。

MYSQLアクセス
mysqlにも「sails」コマンドを使用すればアクセスすることが可能です。
./vendor/bin/sail exec mysql mysql -u root
<出力結果>
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 20
Server version: 8.0.23 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>
その他コマンド
artisanやcompose、nodeもsailから使用することが可能です。
./vendor/bin/sail artisan -V
<出力結果>
Laravel Framework 8.27.0
./vendor/bin/sail composer -V
<出力結果>
Composer version 2.0.9 2021-01-27 16:09:27
./vendor/bin/sail node -v
<出力結果>
v15.8.0
./vendor/bin/sail npm -v
<出力結果>
7.5.1
./vendor/bin/sail php -v
<出力結果>
PHP 8.0.2 (cli) (built: Feb 7 2021 12:22:16) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.2, Copyright (c) Zend Technologies
with Zend OPcache v8.0.2, Copyright (c), by Zend Technologies
unitテストも以下のコマンドで可能です。
./vendor/bin/sail test
<出力結果>
PASS Tests\Unit\ExampleTest
✓ basic test
PASS Tests\Feature\ExampleTest
✓ basic test
Tests: 2 passed
Time: 0.23s
コンテナにアクセス
コンテナにアクセスする場合は、以下で可能です。
./vendor/bin/sail shell
<出力結果>
sail@09226d378cf5:/var/www/html$ ls
README.md artisan composer.json config docker-compose.yml phpunit.xml resources server.php supervisord.log tests webpack.mix.js
app bootstrap composer.lock database package.json public routes storage supervisord.pid vendor
エイリアス設定
「./vendor/bin/sail」と毎回入力するのは面倒なので、エイリアスを設定しておきます。
vi ~/.zshrc
<編集>
alias sail="./vendor/bin/sail
反映させます。
source ~/.zshrc
sailコマンド一覧
起動
sail up
バックグラウンドで起動
sail up -d
停止
sail stop
ステータス
sail ps
<出力結果>
Name Command State Ports
----------------------------------------------------------------------------------------------------------------------------
laravel-test_laravel.test_1 start-container Up 0.0.0.0:80->80/tcp, 8000/tcp
laravel-test_mailhog_1 MailHog Up 0.0.0.0:1025->1025/tcp, 0.0.0.0:8025->8025/tcp
laravel-test_mysql_1 docker-entrypoint.sh mysqld Up (healthy) 0.0.0.0:3306->3306/tcp, 33060/tcp
laravel-test_redis_1 docker-entrypoint.sh redis ... Up (healthy) 0.0.0.0:6379->6379/tcp
-
前の記事
go言語 連想配列を作成する 2021.02.10
-
次の記事
mac TablePlusを使用する 2021.02.10
コメントを書く