FROM node:24-alpine AS node_builder FROM python:3.11-slim WORKDIR /app ENV PYTHONDONTWRITEBYTECODE 1 ENV PYTHONUNBUFFERED 1 ENV PIP_DISABLE_PIP_VERSION_CHECK=on # 安装依赖 + 拷贝 Node.js 和 npm RUN apt-get update && \ apt-get install -y --no-install-recommends curl gcc libpq-dev ca-certificates && \ rm -rf /var/lib/apt/lists/* # 从 node_builder 拷贝 node 和 npm 到系统路径 COPY --from=node_builder /usr/local/bin/node /usr/local/bin/ COPY --from=node_builder /usr/local/bin/npm /usr/local/bin/ COPY --from=node_builder /usr/local/lib/node_modules /usr/local/lib/node_modules # 验证 node 和 npm 是否安装成功(可选) RUN node -v && npm -v COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . EXPOSE 6060 CMD ["hypercorn", "task_app:app", "--config", "app_config.toml"]