https://github.com/q23isline/study_cakephp5
CakePHP 5 勉強用リポジトリ
https://github.com/q23isline/study_cakephp5
cakephp docker docker-compose github-actions php phpstan sql-server vuejs
Last synced: 2 months ago
JSON representation
CakePHP 5 勉強用リポジトリ
- Host: GitHub
- URL: https://github.com/q23isline/study_cakephp5
- Owner: q23isline
- License: mit
- Created: 2025-01-18T01:19:46.000Z (over 1 year ago)
- Default Branch: develop
- Last Pushed: 2026-01-11T09:47:44.000Z (5 months ago)
- Last Synced: 2026-01-11T11:08:28.783Z (5 months ago)
- Topics: cakephp, docker, docker-compose, github-actions, php, phpstan, sql-server, vuejs
- Language: PHP
- Homepage:
- Size: 1.33 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# study_cakephp5
[](./LICENSE)

[](https://github.com/q23isline/study_cakephp5/actions/workflows/backend_ci.yml)
[](https://github.com/q23isline/study_cakephp5/actions/workflows/frontend_ci.yml)
[](https://github.com/phpstan/phpstan)
[](https://github.dev/q23isline/study_cakephp5)
[](https://www.php.net)
[](https://cakephp.org)
[](https://learn.microsoft.com/ja-jp/sql/sql-server/)
[](https://dev.mysql.com)
[](https://nodejs.org)
[](https://www.npmjs.com/)
[](https://ja.vuejs.org/)
CakePHP 5 勉強用リポジトリ
- [バックエンド開発ガイドライン](./backend/README.md)
- [フロントエンド開発ガイドライン](./frontend/README.md)
## 前提
- インストール
- [Windows Subsystem for Linux](https://learn.microsoft.com/ja-jp/windows/wsl/)
- [Git](https://git-scm.com/)
- [Docker Desktop](https://www.docker.com/ja-jp/products/docker-desktop/)
- [Visual Studio Code](https://code.visualstudio.com/)
- [SQL Server Management Studio](https://learn.microsoft.com/ja-jp/sql/ssms/)
## はじめにやること
1. Windows Subsystem for Linux 上でプログラムダウンロード
```bash
git clone https://github.com/q23isline/study_cakephp5.git
```
2. リポジトリのカレントディレクトリへ移動
```bash
cd study_cakephp5
```
3. 開発準備
```bash
rm -f .dockerignore
cp .vscode/extensions.json.default .vscode/extensions.json
cp .vscode/launch.json.default .vscode/launch.json
cp .vscode/settings.json.default .vscode/settings.json
cp backend/config/.env.example backend/config/.env
cp backend/config/app_local.example.php backend/config/app_local.php
```
4. アプリ立ち上げ
```bash
# MySQL の場合
sudo chmod 644 docker/local/mysql/etc-mysql.cnf
docker compose build
sudo chmod -R ugo+rw ./
docker compose up -d
docker compose exec backend php composer.phar install
docker compose exec frontend npm install
sudo chmod -R 777 backend/vendor frontend/node_modules
docker compose exec backend bin/cake migrations migrate
docker compose exec backend bin/cake migrations seed
```
## 日常的にやること
### システム起動
```bash
# DB、バックエンドコンテナ起動
docker compose up -d
# バックエンド起動
docker compose exec backend bin/cake server -H 0.0.0.0
# フロントエンド起動
docker compose exec frontend npm run dev -- --host
```
### システム終了
```bash
# フロントエンド起動ターミナルで Ctrl + c
# バックエンド起動ターミナルで Ctrl + c
docker compose down
```
## 動作確認
### URL
#### バックエンド
#### フロントエンド
#### ログイン情報
| Email | Password |
| ------------------- | -------- |
| | admin00 |
## Permission Deniedエラーが出た時の解決方法
```bash
# プロジェクト全体のファイルすべてに読み込み、書き込み権限を与える
sudo chmod -R ugo+rw ./
# インストールしたライブラリに実行権限を含めた全権限を与える
sudo chmod -R 777 backend/vendor frontend/node_modules
```
## データベースへの接続
### SQL Server の場合
| 項目名 | 設定値 |
| ------------------------ | --------------- |
| サーバー名 | 127.0.0.1 |
| 認証 | SQL Server 認証 |
| ユーザー名 | sa |
| パスワード | Passw0rd |
| サーバー証明書を信頼する | ON |
### MySQL の場合
| 項目名 | 設定値 |
| ---------- | --------- |
| サーバー名 | 127.0.0.1 |
| ユーザー名 | root |
| パスワード | Passw0rd |
## ログ出力場所
| サービス | ログ出力場所 |
| ----------------------- | ------------- |
| CakePHP (開発) | backend/logs |
| SQL Server (開発・本番) | logs/db |
| Node.js (開発) | logs/frontend |
| CakePHP (本番) | logs/backend |
| NGINX・PHP-FPM (本番) | logs/web |
## 本番想定でのアプリ立ち上げ
1. 本番想定のアプリ起動準備
```bash
cp docker/prod/amazon_linux/nginx/ssl/server.crt.default docker/prod/amazon_linux/nginx/ssl/server.crt
cp docker/prod/amazon_linux/nginx/ssl/server.csr.default docker/prod/amazon_linux/nginx/ssl/server.csr
cp docker/prod/amazon_linux/nginx/ssl/server.key.default docker/prod/amazon_linux/nginx/ssl/server.key
cp .dockerignore.prod-default .dockerignore
```
2. アプリ立ち上げ
```bash
cd study_cakephp5
docker compose -f docker-compose-prod.yml build
docker compose -f docker-compose-prod.yml up -d
docker compose exec app-prod bin/cake migrations migrate
docker compose exec app-prod bin/cake migrations seed
sudo chmod -R ugo+rw logs
```
### 本番想定での URL
## 本番想定でのアプリ終了
```bash
docker compose -f docker-compose-prod.yml down
```