Open10
Docker+Laravel+MySQL+Nginx環境構築
参考
任意のプロジェクトディレクトリ直下に docker-compose.yml
と Dockerfile
作成
touch docker-compose.yml
touch Dockerfile
コンテナ上に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"
//フォアグラウンドで起動
docker-compose up
//バックグラウンドで起動
docker-compose up -d
//各コンテナ削除
docker-compose down
//コンテナのステータス確認
docker-compose ps -a
//Laravel version
docker exec -it php php artisan --version
Laravel Framework 8.17.0
docker-compose.yml に定義する内容
- Dockerイメージをビルドするための情報(使用するDockerfile、イメージ名など)
- コンテナ起動するための情報(ホストとの共有ディレクトリ設定やポートフォワードなどの起動オプションなど)
- 使用するDockerネットワーク
Dockerfile について
Docker は Dockerfile から命令を読み込んで、自動的にイメージをビルドします。 Dockerfile はテキストファイルであり、イメージを作り上げるために実行するコマンドラインコマンドを、すべてこのファイルに含めることができます。
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
公式
インストール
日本語化
Project directory "/app/." is not empty. のエラー出たら?
ローカルのsrc
が存在しているとNG。ディレクトリ削除で解消
docker 環境 完全リセット
一括削除
docker-compose down --rmi all --volumes --remove-orphans
再構築
docker-compose up --build