- Backend: FastAPI + SQLAlchemy + Celery (Python 3.11+) - Frontend: Vue 3 + TypeScript + Pinia + Tailwind - Admin Frontend: separate Vue 3 app for management - Docker Compose: 9 services orchestration - Specs: design prototypes, memory system PRD, product roadmap Cleanup performed: - Removed temporary debug scripts from backend root - Removed deprecated admin_app.py (embedded UI) - Removed duplicate docs from admin-frontend - Updated .gitignore for Vite cache and egg-info
28 lines
653 B
Docker
28 lines
653 B
Docker
FROM python:3.11-slim
|
|
|
|
WORKDIR /app
|
|
|
|
# 安装系统依赖 (如果需要)
|
|
# RUN apt-get update && apt-get install -y gcc libpq-dev && rm -rf /var/lib/apt/lists/*
|
|
|
|
# 复制项目文件
|
|
COPY pyproject.toml .
|
|
# 复制源码
|
|
COPY app ./app
|
|
COPY alembic ./alembic
|
|
COPY alembic.ini .
|
|
|
|
# 安装依赖
|
|
# 使用 pip 安装当前目录 (.),会自动解析 pyproject.toml
|
|
RUN pip install --no-cache-dir .
|
|
|
|
# 创建静态文件目录 (用于存放生成的图片)
|
|
RUN mkdir -p static/images
|
|
|
|
# 暴露端口
|
|
EXPOSE 8000
|
|
|
|
# 启动命令
|
|
# 生产环境建议使用 gunicorn 或 uvicorn --workers
|
|
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]
|