warp2Service / Dockerfile
youbiaokachi's picture
Update Dockerfile
14e3074 verified
raw
history blame
982 Bytes
# ---- Base Stage ----
FROM ghcr.io/astral-sh/uv:python3.13-bookworm-slim AS base
WORKDIR /app
# ---- Builder Stage ----
FROM base AS builder
COPY pyproject.toml .
RUN uv venv && \
. .venv/bin/activate && \
uv pip install . --no-cache-dir
# ---- Final Stage ----
FROM base AS final
ENV WARP_LOG_LEVEL=info
ENV WARP_ACCESS_LOG=true
ENV OPENAI_LOG_LEVEL=info
ENV OPENAI_ACCESS_LOG=true
COPY --from=builder /app/.venv ./.venv
COPY . .
# 解决方案:创建可供所有用户写入的日志目录,并建立符号链接
RUN mkdir -p /tmp/logs && \
chmod 777 /tmp/logs && \
ln -s /tmp/logs /app/logs
# 解决方案2:处理 .env 文件
# 1. 将我们代码库中的 .env 文件复制到可写的 /tmp 目录作为初始版本
# 2. 赋予它所有用户可读写的权限
# 3. 在 /app 目录下创建一个指向 /tmp/.env 的符号链接
RUN cp .env /tmp/.env && \
chmod 666 /tmp/.env && \
ln -s /tmp/.env /app/.env
CMD ["./.venv/bin/python", "./start.py"]