diff --git a/Dockerfile b/Dockerfile index a52aca8..cbf0570 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,31 +1,30 @@ -# 使用Python 3.9作为基础镜像 -FROM python:3.9-slim - -# 设置工作目录 -WORKDIR /app - -# 设置环境变量 -ENV PYTHONDONTWRITEBYTECODE=1 \ - PYTHONUNBUFFERED=1 \ - TZ=Asia/Shanghai +# 使用Python 3.10作为基础镜像 +FROM python:3.10-slim # 替换为阿里云源 -RUN sed -i 's@http://.*archive.ubuntu.com@http://mirrors.aliyun.com@g' /etc/apt/sources.list && \ - sed -i 's@http://.*security.ubuntu.com@http://mirrors.aliyun.com@g' /etc/apt/sources.list +RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \ + echo "deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib" > /etc/apt/sources.list && \ + echo "deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib" >> /etc/apt/sources.list && \ + echo "deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib" >> /etc/apt/sources.list && \ + echo "deb https://mirrors.aliyun.com/debian-security bullseye-security main non-free contrib" >> /etc/apt/sources.list # 安装系统依赖 RUN apt-get update \ && apt-get install -y --no-install-recommends \ build-essential \ - curl \ + default-libmysqlclient-dev \ + pkg-config \ && rm -rf /var/lib/apt/lists/* +# 设置工作目录 +WORKDIR /app + # 复制项目文件 COPY requirements.txt . COPY app app/ # 安装Python依赖 -RUN pip install --no-cache-dir -r requirements.txt \ +RUN pip install -i https://mirrors.aliyun.com/pypi/simple/ --no-cache-dir -r requirements.txt \ && pip install --no-cache-dir uvicorn # 暴露端口