FROM python:3.11-slim # 换 debian 源为阿里云 RUN sed -i 's@http://deb.debian.org@http://mirrors.aliyun.com@g' /etc/apt/sources.list && \ sed -i 's@http://security.debian.org@http://mirrors.aliyun.com@g' /etc/apt/sources.list # 安装 Node.js 和 supervisord RUN apt-get update && \ apt-get install -y curl supervisor && \ curl -fsSL https://deb.nodesource.com/setup_21.x | bash - && \ apt-get install -y nodejs && \ apt-get clean # 设置 pip 国内镜像(清华) RUN mkdir -p /root/.pip && \ echo "[global]\nindex-url = https://pypi.tuna.tsinghua.edu.cn/simple\ntrusted-host = pypi.tuna.tsinghua.edu.cn" > /root/.pip/pip.conf # 设置工作目录 WORKDIR /app # 复制前端代码并安装依赖、构建 COPY platform/ ./platform/ WORKDIR /app/platform RUN npm install && npm run build # 安装 http-server RUN npm install -g http-server # 复制后端代码并安装依赖 WORKDIR /app/back COPY back/requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY back/ . # supervisor 配置 COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf WORKDIR /app CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"]