From 3a20180b6fda33153f6842f0a12d18f8c292901e Mon Sep 17 00:00:00 2001 From: HuangHuiKang Date: Fri, 10 Jul 2026 17:34:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BC=98=E5=8C=96dockerfile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 5 +++++ .idea/claudeCodeTabState.xml | 4 ++-- .idea/dbnavigator.xml | 15 +++++++++++++++ Dockerfile | 13 +++++++++---- 4 files changed, 31 insertions(+), 6 deletions(-) diff --git a/.dockerignore b/.dockerignore index 050420e..defb938 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,5 +1,7 @@ .git .gitignore +.idea +.vscode .pytest_cache .ruff_cache .venv @@ -9,6 +11,9 @@ __pycache__ logs tests sql +static/upload +static/download +static/invoice env/.env.dev env/.env.prod Dockerfile diff --git a/.idea/claudeCodeTabState.xml b/.idea/claudeCodeTabState.xml index 0eb1afb..339c3e4 100644 --- a/.idea/claudeCodeTabState.xml +++ b/.idea/claudeCodeTabState.xml @@ -7,10 +7,10 @@ diff --git a/.idea/dbnavigator.xml b/.idea/dbnavigator.xml index dadbaaa..0e47829 100644 --- a/.idea/dbnavigator.xml +++ b/.idea/dbnavigator.xml @@ -4,15 +4,26 @@ + + + + + + + + + + + @@ -448,4 +459,8 @@ + + + + \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 0218b65..758b4f2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,10 @@ +# syntax=docker/dockerfile:1.7 + FROM python:3.12-slim AS runtime ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ - PIP_NO_CACHE_DIR=1 \ + PIP_NO_CACHE_DIR=0 \ PIP_DISABLE_PIP_VERSION_CHECK=1 \ PIP_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ \ PIP_TRUSTED_HOST=mirrors.aliyun.com \ @@ -14,7 +16,9 @@ ENV PYTHONDONTWRITEBYTECODE=1 \ WORKDIR /app -RUN apt-get update \ +RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ + --mount=type=cache,target=/var/lib/apt/lists,sharing=locked \ + apt-get update \ && apt-get install -y --no-install-recommends \ curl \ fontconfig \ @@ -25,10 +29,11 @@ RUN apt-get update \ libpangocairo-1.0-0 \ shared-mime-info \ tzdata \ - && rm -rf /var/lib/apt/lists/* + && true COPY requirements.txt ./ -RUN pip install --no-cache-dir -r requirements.txt +RUN --mount=type=cache,target=/root/.cache/pip \ + pip install --prefer-binary -r requirements.txt COPY alembic.ini main.py banner.txt ./ COPY alembic ./alembic