1234567891011121314151617181920212223242526272829303132 |
- 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"]
|