perf(ci): 后端镜像构建优化——腾讯云Maven镜像源+BuildKit缓存
CI/CD Deploy (Admin) / 构建后端镜像并部署 (push) Successful in 4m23s
CI/CD Deploy (Admin) / 构建后端镜像并部署 (push) Successful in 4m23s
- 镜像源从阿里云换成腾讯云(内网直连,解决依赖下载仅几十KB/s的问题) - RUN 加 BuildKit cache mount 持久化 /root/.m2/repository,跨构建复用 - CI 构建步骤显式启用 DOCKER_BUILDKIT=1
This commit is contained in:
@@ -47,6 +47,7 @@ jobs:
|
||||
- name: 构建后端镜像
|
||||
run: |
|
||||
set -euo pipefail
|
||||
export DOCKER_BUILDKIT=1
|
||||
docker build -t freedom-admin:latest /opt/freedom/workspace-admin
|
||||
|
||||
- name: 部署后端服务
|
||||
|
||||
+6
-6
@@ -6,7 +6,7 @@
|
||||
FROM maven:3.6.3-jdk-8 AS builder
|
||||
WORKDIR /build
|
||||
|
||||
# 配置 Maven 国内镜像源,加速依赖下载
|
||||
# 配置腾讯云镜像源(腾讯云服务器内网直连,速度远快于公网阿里云)
|
||||
RUN mkdir -p /root/.m2 && \
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>' > /root/.m2/settings.xml && \
|
||||
echo '<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"' >> /root/.m2/settings.xml && \
|
||||
@@ -14,10 +14,10 @@ RUN mkdir -p /root/.m2 && \
|
||||
echo ' xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">' >> /root/.m2/settings.xml && \
|
||||
echo ' <mirrors>' >> /root/.m2/settings.xml && \
|
||||
echo ' <mirror>' >> /root/.m2/settings.xml && \
|
||||
echo ' <id>aliyun</id>' >> /root/.m2/settings.xml && \
|
||||
echo ' <id>tencent</id>' >> /root/.m2/settings.xml && \
|
||||
echo ' <mirrorOf>central</mirrorOf>' >> /root/.m2/settings.xml && \
|
||||
echo ' <name>Aliyun Maven</name>' >> /root/.m2/settings.xml && \
|
||||
echo ' <url>https://maven.aliyun.com/repository/central</url>' >> /root/.m2/settings.xml && \
|
||||
echo ' <name>Tencent Cloud Maven</name>' >> /root/.m2/settings.xml && \
|
||||
echo ' <url>https://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url>' >> /root/.m2/settings.xml && \
|
||||
echo ' </mirror>' >> /root/.m2/settings.xml && \
|
||||
echo ' </mirrors>' >> /root/.m2/settings.xml && \
|
||||
echo '</settings>' >> /root/.m2/settings.xml
|
||||
@@ -26,8 +26,8 @@ RUN mkdir -p /root/.m2 && \
|
||||
COPY pom.xml .
|
||||
COPY src ./src
|
||||
|
||||
# 打包(跳过测试),产物 target/freedom-admin-1.0.1.jar
|
||||
RUN mvn -B clean package -DskipTests
|
||||
# 打包(跳过测试),使用 BuildKit cache mount 持久化 Maven 仓库,跨构建复用
|
||||
RUN --mount=type=cache,target=/root/.m2/repository mvn -B clean package -DskipTests
|
||||
|
||||
# ---------- 运行阶段 ----------
|
||||
FROM openjdk:8-jre-slim
|
||||
|
||||
Reference in New Issue
Block a user