36 lines
999 B
YAML
36 lines
999 B
YAML
version: '3.8'
|
|
services:
|
|
backend:
|
|
image: python:3.11 # 直接使用Python 3.11官方镜像
|
|
container_name: backend
|
|
ports:
|
|
- "7792:5000"
|
|
volumes:
|
|
- ./back:/app # 挂载你的后端目录
|
|
- backend-venv:/opt/venv # 持久化虚拟环境
|
|
working_dir: /app
|
|
environment:
|
|
- FLASK_ENV=development
|
|
command: >
|
|
sh -c "if [ ! -f /opt/venv/bin/python ]; then
|
|
python -m venv /opt/venv &&
|
|
. /opt/venv/bin/activate &&
|
|
pip install -r requirements.txt;
|
|
fi &&
|
|
. /opt/venv/bin/activate &&
|
|
python app.py" # 确保你的入口文件是app.py
|
|
|
|
frontend:
|
|
image: node:21 # 使用Node.js 21官方镜像
|
|
container_name: frontend
|
|
ports:
|
|
- "7793:5173" # Vite默认端口
|
|
volumes:
|
|
- ./platform:/app
|
|
working_dir: /app
|
|
environment:
|
|
- NODE_ENV=development
|
|
command: sh -c "npm install && npm run dev" # 假设使用npm
|
|
|
|
volumes:
|
|
backend-venv: # 持久化Python虚拟环境 |