From ff0ec5c15e423e684be9bcf357752684c9bc405a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E8=9A=82=E8=9A=81=E4=BA=91?= Date: Sat, 12 Sep 2026 01:39:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .jenkins/Dockerfile | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.jenkins/Dockerfile b/.jenkins/Dockerfile index 19cceeb..a748ba8 100644 --- a/.jenkins/Dockerfile +++ b/.jenkins/Dockerfile @@ -8,10 +8,10 @@ # 通过 --build-arg 动态注入以下变量,便于在 CI 中复用同一份 Dockerfile: # VAR_BASE_IMAGE 基础镜像(如 python:3.12-slim、自定义的带 esxi 用户的镜像) # VAR_PYTHON_PREFIX Python 安装前缀(依赖安装位置) -# VAR_JARFILE_PATH 项目源码目录(相对构建上下文) +# VAR_PYFILE_PATH 项目源码目录(相对构建上下文) # VAR_PROFILES 应用 profile(dev / prod ...) # VAR_PORT 应用监听端口 -# VAR_JARFILE 启动入口文件名(不含 .py) +# VAR_PYFILE 启动入口文件名(不含 .py) # ============================================================ # ------------------------------------------------------------ @@ -62,6 +62,7 @@ RUN yum install -y yum-utils net-tools && \ openssl-devel bzip2-devel libffi-devel \ mariadb-devel pkgconf-pkg-config && \ yum clean all && rm -rf /var/cache/yum + #RUN --mount=type=cache,target=/var/cache/dnf,sharing=locked,id=dnf-cache \ # dnf install -y yum-utils net-tools && \ # dnf install -y gcc gcc-c++ make cmake \ @@ -81,9 +82,9 @@ RUN pip3 config set global.index-url http://mirrors.aliyun.com/pypi/simple && \ # 只拷贝 requirements.txt 而不是整个项目, # 这样源码变化但 requirements 未变时可以复用 pip install 层缓存 # ------------------------------------------------------------ -ARG VAR_JARFILE_PATH +ARG VAR_PYFILE_PATH WORKDIR /opt/apps -COPY ${VAR_JARFILE_PATH}/requirements.txt ./ +COPY ${VAR_PYFILE_PATH}/requirements.txt ./ # ------------------------------------------------------------ # 将依赖安装到 Python 的 prefix 下 @@ -119,14 +120,14 @@ ENV PYTHONUNBUFFERED=1 \ # VAR_PYTHON_PREFIX Python 前缀(必须与 builder 保持一致) # VAR_PROFILES 配置 profile(dev / prod) # VAR_PORT 应用监听端口 -# VAR_JARFILE 启动入口文件名(不含 .py) -# VAR_JARFILE_PATH 项目源码目录 +# VAR_PYFILE 启动入口文件名(不含 .py) +# VAR_PYFILE_PATH 项目源码目录 # ------------------------------------------------------------ ARG VAR_PYTHON_PREFIX=/usr/local/python3.12.8 ARG VAR_PROFILES ARG VAR_PORT -ARG VAR_JARFILE -ARG VAR_JARFILE_PATH +ARG VAR_PYFILE +ARG VAR_PYFILE_PATH # ------------------------------------------------------------ # 将 ARG 转成 ENV,运行期可通过环境变量读取 @@ -135,7 +136,7 @@ ARG VAR_JARFILE_PATH # PROFILES 应用读取的 profile # ------------------------------------------------------------ ENV PORT=${VAR_PORT} \ - PYFILE=${VAR_JARFILE} \ + PYFILE=${VAR_PYFILE} \ PROFILES=${VAR_PROFILES} # ------------------------------------------------------------ @@ -167,7 +168,7 @@ WORKDIR /opt/apps # 拷贝项目源码 # 建议配合 .dockerignore 排除 .git、__pycache__、本地虚拟环境等 # ------------------------------------------------------------ -COPY ${VAR_JARFILE_PATH}/ ./ +COPY ${VAR_PYFILE_PATH}/ ./ # ------------------------------------------------------------ # 一次性修正属主: