Open10

Docker+Laravel+MySQL+Nginx環境構築

plaincode_jpplaincode_jp

任意のプロジェクトディレクトリ直下に docker-compose.ymlDockerfile 作成

touch docker-compose.yml
touch Dockerfile
plaincode_jpplaincode_jp

コンテナ上にlaravel インストール

'pwd' /src でプロジェクトディレクトリ/src 配下に展開される

docker run --rm -v `pwd`/src:/app composer create-project --prefer-dist laravel/laravel .

** バージョン指定したい場合、末尾にバージョン番号を付与 **

docker run --rm -v `pwd`/src:/app composer create-project --prefer-dist laravel/laravel . "5.5"
plaincode_jpplaincode_jp
//フォアグラウンドで起動
docker-compose up

//バックグラウンドで起動
docker-compose up -d

//各コンテナ削除
docker-compose down

//コンテナのステータス確認
docker-compose ps -a
plaincode_jpplaincode_jp
//Laravel version
docker exec -it php php artisan --version
Laravel Framework 8.17.0
plaincode_jpplaincode_jp

docker-compose.yml に定義する内容

  • Dockerイメージをビルドするための情報(使用するDockerfile、イメージ名など)
  • コンテナ起動するための情報(ホストとの共有ディレクトリ設定やポートフォワードなどの起動オプションなど)
  • 使用するDockerネットワーク
plaincode_jpplaincode_jp

Dockerfile について

Docker は Dockerfile から命令を読み込んで、自動的にイメージをビルドします。 Dockerfile はテキストファイルであり、イメージを作り上げるために実行するコマンドラインコマンドを、すべてこのファイルに含めることができます。

plaincode_jpplaincode_jp

laravel/jetstream インストール

php/laravelコンテナに node,npm を追加する。(が、package.jsonが見つからないエラーが出て、手順が怪しい。要整理)

docker-compose exec php composer require laravel/jetstream

docker-compose exec php php artisan jetstream:install livewire --teams


docker run --rm -v `pwd`/src:/app -w /app node npm install && npm run dev

//docker-compose exec php npm install && npm run dev


docker-compose exec php php artisan migrate

docker-compose exec php ash

公式
https://jetstream.laravel.com/1.x/introduction.html
https://readouble.com/jetstream/1.0/ja/introduction.html

インストール
https://qiita.com/ucan-lab/items/7824d1293fef4698c212

日本語化
https://blog.capilano-fw.com/?p=7930

plaincode_jpplaincode_jp

Project directory "/app/." is not empty. のエラー出たら?

ローカルのsrc が存在しているとNG。ディレクトリ削除で解消