trading.ai/Dockerfile
2025-09-23 16:12:18 +08:00

47 lines
952 B
Docker
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 使用Python 3.12官方镜像
FROM python:3.12-slim
# 设置工作目录
WORKDIR /app
# 设置环境变量
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
ENV FLASK_APP=web/mysql_app.py
ENV FLASK_ENV=production
ENV TZ=Asia/Shanghai
# 安装系统依赖包括MySQL客户端库
RUN apt-get update && apt-get install -y \
gcc \
g++ \
curl \
tzdata \
default-libmysqlclient-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
# 复制requirements文件
COPY requirements.txt .
# 安装Python依赖
RUN pip install --no-cache-dir -r requirements.txt
# 复制项目文件
COPY . .
# 创建必要的目录
RUN mkdir -p /app/logs /app/config
# 设置权限
RUN chmod +x start_mysql_web.py
# 暴露端口
EXPOSE 8080
# 健康检查
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD curl -f http://localhost:8080/api/stats || exit 1
# 启动命令
CMD ["python", "start_mysql_web.py"]