# 使用Python 3.11作为基础镜像 FROM python:3.11-slim # 设置工作目录 WORKDIR /app # 设置环境变量 ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ TIANFENG_ENV=default \ HOST=0.0.0.0 \ PORT=8000 \ DEBUG=false # 安装系统依赖 RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ default-libmysqlclient-dev \ netcat-traditional \ curl \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 复制项目文件 COPY . /app/ # 安装Python依赖 RUN pip install --no-cache-dir -r requirements.txt # 创建日志目录 RUN mkdir -p /app/logs && chmod 777 /app/logs # 设置启动脚本权限 RUN chmod +x /app/scripts/docker-entrypoint.sh # 暴露端口 EXPOSE 8000 # 设置启动脚本为入口点 ENTRYPOINT ["/app/scripts/docker-entrypoint.sh"] # 启动命令 CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]