| .. | |||
| backend | 5 months ago | ||
| frontend | 5 months ago | ||
| README.md | 5 months ago | ||
| docker-compose.yml | 5 months ago | ||
FlaskバックエンドとReactフロントエンドを組み合わせたWebアプリケーションテンプレートです。Docker Composeで両方を簡単に起動できます。
flask-react-app/
├── docker-compose.yml # Docker Compose設定
├── README.md # このファイル
├── backend/ # Flaskバックエンド
│ ├── app.py # Flaskアプリケーション本体
│ ├── Dockerfile # バックエンド用Dockerイメージ定義
│ └── requirements.txt # Python依存パッケージ
└── frontend/ # Reactフロントエンド
├── src/ # Reactソースコード
│ ├── App.tsx # Reactメインコンポーネント
│ ├── App.css
│ └── main.tsx # Reactエントリーポイント
├── index.html # 起動の起点となるHTMLファイル
├── package.json # Node.js依存パッケージ(pythonのrequirements.txtみたいなもの)
├── vite.config.ts # Vite設定
├── tsconfig.json # TypeScript設定
└── Dockerfile # フロントエンド用Dockerイメージ定義
/flask-react-app ディレクトリに移動して、以下のコマンドを実行:
docker compose up -d
ブラウザで以下のURLにアクセス:
http://localhost:5173
基本はこっちにアクセスして、Reactアプリを利用します。
http://localhost:6000
こっちはAPIサーバー用です。
docker compose down
バックエンド(Flask)は http://localhost:6000 で以下のAPIを提供します。
//api/health{
"ok": true,
"message": "hello from Flask"
}
/api/echo{
"name": "test",
"time": "2026-02-08T12:50:16.020Z"
}
{
"ok": true,
"you_sent": {
"name": "test",
"time": "2026-02-08T12:50:16.020Z"
}
}
全サービスのログ:
docker compose logs -f
特定のサービスのみ:
docker compose logs -f backend docker compose logs -f frontend
バックエンド:
docker compose exec backend bash
フロントエンド:
docker compose exec frontend sh
backend/ 配下のファイルを編集すると、Flaskの開発モードにより自動でリロードされます。
frontend/src/ 配下のファイルを編集すると、Viteのホットリロード機能により自動で反映されます。
| サービス | ポート | 説明 |
|---|---|---|
| Frontend | 5173 | React開発サーバー(Vite) |
| Backend | 6000 | Flask APIサーバー |
http://localhost:6000/api/... を使用してくださいdocker-compose.yml のポート設定を変更してください