# 使用官方 Python 基础镜像 | |
FROM python:3.9-slim | |
# 创建 appuser 用户和组 | |
RUN groupadd -r appuser && useradd -r -g appuser appuser | |
# 设置环境变量 | |
ENV TRANSFORMERS_CACHE=/app/.cache | |
# 修改目录的所有者和权限 | |
RUN mkdir -p /app | |
RUN chown -R appuser:appuser /app | |
RUN chmod -R 755 /app | |
RUN mkdir -p /app/.cache | |
RUN chown -R appuser:appuser /app/.chach | |
RUN chmod -R 755 /app/.chach | |
# 设置工作目录 | |
WORKDIR /app | |
# 将 /app 目录的所有权赋予 appuser | |
# 复制依赖文件到容器中 | |
COPY requirements.txt . | |
# 安装依赖 | |
RUN pip install --no-cache-dir -r requirements.txt | |
# 复制项目代码到容器中 | |
COPY . . | |
# 切换到 appuser 用户 | |
USER appuser | |
# 指定容器启动时运行的命令 | |
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"] | |