Spaces:
Sleeping
Sleeping
File size: 967 Bytes
5dea770 eeb1a9f 5dea770 eeb1a9f | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | # 基础镜像:uv python3.12 轻量版
FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim
# 1. 安装 git 并清理 apt 缓存,减少镜像体积
RUN apt-get update && \
apt-get install -y --no-install-recommends git && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# 2. 克隆代码到 /app 目录(自动创建 /app,无需手动mkdir)
RUN git clone https://github.com/erxiansheng/gemininixiang.git /app
# 3. 创建缓存目录,使用合理权限(避免 777 宽松权限)
RUN mkdir /.cache && chmod -R 777 /.cache
# 5. 切换工作目录
WORKDIR /app
# 6. 暴露端口
EXPOSE 8000
# 7. 使用 uv 安装依赖(适配基础镜像,替代 pip)
# --no-cache-dir 进一步减少缓存文件,缩小镜像体积
RUN uv venv && \
. .venv/bin/activate && \
uv pip install --no-cache-dir -r requirements.txt
# 启动时先激活虚拟环境,再运行应用
CMD ["/bin/sh", "-c", ". .venv/bin/activate && python server.py"] |