はじめに
naritomoと申します。
本職はインフラエンジニアを行っています。
Laravel9つぶやきサイトについてテスト公開してみたので、
ソースも公開したいと思います。
つぶやきアプリ
*開発中のため予告なしに内容の消去、公開停止を実施いたします。
いろいろアドバイスいただけると嬉しいです。
立ち上げ概要
Laravel9tubuyakisaitoソースを入手し、
ローカル環境でデプロイするものとなります。
必要なソースは以下にまとめてあります。
dockerソース
つぶやきサイトソース
参考書籍
事前準備
mac+DockerCompose+vscode+gitでの環境を構築してること。
*Windowsでもwsl2+Ubuntuで実施可能。
環境構築手順
ベースリポジトリをクローンする。
$ git clone -b php8.2 https://github.com/naritomo08/laravel_docker.git laraveldocker
$ cd laraveldocker
$ rm -rf .git
$ git clone https://github.com/naritomo08/laravel9tubu.git backend
$ cd backend
$ rm -rf .git
* devlopブランチにmix化、breeze導入、tailwindcss導入しただけのまっさらなのも用意しています。
以下のコマンドで導入可能。
git clone -b devlop https://github.com/naritomo08/laravel9tubu.git backend
最後の.git削除コマンドについて、
別途devlopブランチに元のLaravel9から以下の
対応をしたソースを置いています。
- Laravel MIX化
- breeze(認証機能)導入
- TailwindCSS 導入
これを元に新たに開発いただいても構いません。
このブランチを使用して新規開発したい場合、以下のコマンドを入力してから.gitを削除してください。
$ git checkout -b develop remotes/origin/develop
.env.exampleファイルを編集する。
$ cd ../
$ vi .env.example
以下の内容に編集を行う。
APP_DEBUG = false
QUEUE_CONNECTION=database
環境構築用のシェルスクリプトを実行する。
$ chmod u+x build_env.sh && ./build_env.sh
ファイルパーミッションを更新する。
$ chmod u+x set_permission.sh && ./set_permission.sh
サイト設定を行う。
PHPコンテナログイン
$ docker-compose exec laravel_php /bin/bash
$ cd project
$ php artisan migrate
*パブリック画面ファイル作成初回時以下のコマンドを実施
$ chmod -R a+x node_modules
パブリック画面ファイル作成
$ npm run prod
つぶやき機能投稿画像参照リンク作成(新たに開発する場合は必要なし)
$ php artisan storage:link
Laracvelキャッシュクリア
$ php artisan cache:clear
$ php artisan config:clear
$ php artisan route:clear
$ php artisan view:clear
変更ファイル戻し
$ git checkout .
各種サイト確認する。
サイトURL
laravel
adminer(DB管理ツール)
- ログイン情報
- サーバ: laravel_db
- ユーザ名: laravel
- パスワード: password
- データベース: laravel
mailhog(メールサーバ)
コンテナ起動する方法
docker-compose.yml
が存在するフォルダーで以下のコマンドを実行する。
$ docker-compose up -d
コンテナ停止する方法
docker-compose.yml
が存在するフォルダーで以下のコマンドを実行する。
$ docker-compose stop
コンテナ削除する方法
docker-compose.yml
が存在するフォルダーで以下のコマンドを実行する。
$ docker-compose down
起動中のコンテナに入る
PHPコンテナ
$ docker-compose exec laravel_php /bin/bash
DBコンテナ
$ docker-compose exec laravel_db /bin/bash
その他
開発中に以下のコマンドを実行してください。
$ docker-compose exec laravel_php /bin/bash
$ cd project
$ npm run watch
npm run watchコマンドとは
npm run watchコマンドはターミナルで実行し続け、関連ファイル全部の変更を監視します。
Webpackは変更を感知すると、アセットを自動的に再コンパイルします。
このソースをAWS(ECS)に展開したい場合
backendフォルダに展開されているソースについて、
以下のページを参考にAWS(ECS)へ展開することもできます。
このソースをOCI環境に展開したい場合
以下のページで取りまとめています(作成中)
おわりに
これが他のLaravel9を扱う方の助けになればと思います。