# 使用官方Python运行时作为基础镜像 FROM registry.dev.maimaiag.com/library/python:3.11-slim # 设置工作目录 WORKDIR /app # 设置环境变量 ENV PYTHONDONTWRITEBYTECODE 1 ENV PYTHONUNBUFFERED 1 # 配置uv使用阿里云源 ENV UV_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ ENV UV_EXTRA_INDEX_URL=https://pypi.org/simple/ RUN python -m pip install --upgrade pip setuptools wheel --index-url https://mirrors.aliyun.com/pypi/simple/ # 安装uv RUN pip install uv --index-url https://mirrors.aliyun.com/pypi/simple/ # 复制依赖文件 COPY pyproject.toml requirements.txt ./ # 安装依赖 RUN uv sync # 复制应用代码 COPY . . # 创建非root用户 RUN adduser --disabled-password --gecos '' appuser RUN chown -R appuser:appuser /app USER appuser # 暴露端口 EXPOSE 8000 # 启动命令 CMD ["uv", "run", "uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]