What is Vessel?
Vessel は、DockerでLaravelの開発環境を簡単に作るためのツールで、Laravel開発に必要な最低限のものが付いてきます。
- PHP7.2
- Nginx
- MySQL
- Redis
- Node.js
- Yarn
Laravelの作者であるTaylor Otwellも開発環境で使っているそうです。
How I Work (October 2018 Edition)
If I need to run a project within Docker (typically when using Windows), I like to use Vessel.
Getting Started
Laravelプロジェクトで以下の手順を実行するだけで、Docker環境のセットアップが完了します。
composer require shipping-docker/vessel
php artisan vendor:publish --provider="Vessel\VesselServiceProvider"
→ Dockerfile
や docker-compose.yml
がルートディレクトリにコピーされる
→ ファイルの中身はこんな感じ
https://github.com/shipping-docker/vessel/tree/master/docker-files
bash vessel init
→ predis/predis
がインストールされたり .env
が作られる
That's it!
Start docker containers
Vesselで作った環境でDockerコンテナを起動したりするためには、vessel
コマンドを使います。
./vessel start
→ docker-compose up -d
と同じ
→ 初回は docker pull
でイメージをダウンロードするので時間がかかる
ブラウザでhttp://localhost
にアクセスしてちゃんとページが表示されれば成功です。
普通の docker
コマンドや docker-compose
コマンドも使えますが、 vessel
コマンドはそれらをラップしています。
通常の docker
コマンドの使い方を理解した上で使うことをオススメします。
vessel
コマンドはただのシェルスクリプトなので、 ソースコード を読めば何をやっているのかすぐ分かると思います。
Available Commands
上記の他にも、vesselで使えるコマンドはたくさんあるので、詳しくは公式ドキュメントを読んでみてください。
https://vessel.shippingdocker.com/docs/everyday-usage/