Help us understand the problem. What is going on with this article?

VesselでLaravelのDocker環境をサクッと作る

What is Vessel?

image.png

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"

Dockerfiledocker-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にアクセスしてちゃんとページが表示されれば成功です。

image.png

普通の docker コマンドや docker-compose コマンドも使えますが、 vessel コマンドはそれらをラップしています。
通常の docker コマンドの使い方を理解した上で使うことをオススメします。
vessel コマンドはただのシェルスクリプトなので、 ソースコード を読めば何をやっているのかすぐ分かると思います。

Available Commands

上記の他にも、vesselで使えるコマンドはたくさんあるので、詳しくは公式ドキュメントを読んでみてください。
https://vessel.shippingdocker.com/docs/everyday-usage/

avosalmon
I am a software engineer from Japan and currently based in Singapore. Especially for these five years, I've been creating e-commerce web applications using Laravel, Angular and Vue.js.
https://ryutahamasaki.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away