From 53e309026fbb6ee4edd526db2862de797672a627 Mon Sep 17 00:00:00 2001 From: Toys-A Date: Wed, 5 Aug 2026 20:44:43 +0800 Subject: [PATCH] build(deploy): Add configurable Maven mirror Add MAVEN_MIRROR_URL for 1Panel backend builds so deployments can use a faster regional mirror or Maven Central based on network access. Update the 1Panel deployment guide to document the mirror option and keep first-time Nacos credentials guidance near environment setup. --- DEPLOY_1PANEL.md | 29 +++++++++++++++++++++++++++++ backend/.env.1panel.example | 2 ++ backend/Dockerfile.service.1panel | 19 ++++++++++++++++++- backend/docker-compose.1panel.yml | 10 ++++++++++ 4 files changed, 59 insertions(+), 1 deletion(-) diff --git a/DEPLOY_1PANEL.md b/DEPLOY_1PANEL.md index 913f21c..966d45d 100644 --- a/DEPLOY_1PANEL.md +++ b/DEPLOY_1PANEL.md @@ -130,6 +130,18 @@ NACOS_AUTH_TOKEN=至少32字节随机字符串 GRAFANA_ADMIN_PASSWORD=强密码 ``` +国内服务器建议保留默认 Maven 镜像: + +```env +MAVEN_MIRROR_URL=https://maven.aliyun.com/repository/public +``` + +如果服务器网络能稳定访问 Maven Central,也可以改成: + +```env +MAVEN_MIRROR_URL=https://repo.maven.apache.org/maven2 +``` + 首次部署建议保持: ```env @@ -334,6 +346,23 @@ docker run --rm --network haovp-1panel_haovp-network -v "$PWD/backup:/backup" mi 后端镜像会在 Docker 构建阶段执行 Maven 构建,前端镜像会执行 npm 构建。国内服务器建议提前配置 Docker、Maven、npm 镜像源,或在 CI 中构建镜像后推送到私有镜像仓库。 +### Maven 依赖下载失败 + +如果日志里出现: + +```text +Unknown host repo.maven.apache.org +Non-resolvable parent POM +``` + +说明后端镜像构建阶段无法访问 Maven Central。1Panel 版后端 Dockerfile 已支持 Maven 镜像源,默认: + +```env +MAVEN_MIRROR_URL=https://maven.aliyun.com/repository/public +``` + +修改 `.env.1panel` 后,需要在 1Panel 中重新构建编排。 + ### 拉取 `haovp/video-*` 镜像失败 如果 1Panel 报错类似: diff --git a/backend/.env.1panel.example b/backend/.env.1panel.example index b2a2f77..73cf306 100644 --- a/backend/.env.1panel.example +++ b/backend/.env.1panel.example @@ -20,6 +20,8 @@ NACOS_AUTH_TOKEN=change-me-nacos-auth-token-at-least-32-bytes-long GRAFANA_ADMIN_USER=admin GRAFANA_ADMIN_PASSWORD=change-me-grafana-password +MAVEN_MIRROR_URL=https://maven.aliyun.com/repository/public + LOCAL_BIND_ADDR=127.0.0.1 FRONTEND_BIND_ADDR=127.0.0.1 WEB_HTTP_PORT=18080 diff --git a/backend/Dockerfile.service.1panel b/backend/Dockerfile.service.1panel index a1b570d..15cc684 100644 --- a/backend/Dockerfile.service.1panel +++ b/backend/Dockerfile.service.1panel @@ -7,7 +7,24 @@ WORKDIR /workspace COPY . . ARG MODULE -RUN mvn -pl "${MODULE}" -am package -Dmaven.test.skip=true +ARG MAVEN_MIRROR_URL=https://maven.aliyun.com/repository/public + +RUN mkdir -p /root/.m2 && cat > /root/.m2/settings.xml < + + + mirror + * + mirror + ${MAVEN_MIRROR_URL} + + + +EOF + +RUN mvn -s /root/.m2/settings.xml -pl "${MODULE}" -am package -Dmaven.test.skip=true FROM eclipse-temurin:17-jre diff --git a/backend/docker-compose.1panel.yml b/backend/docker-compose.1panel.yml index 2f394e2..5f85eaf 100644 --- a/backend/docker-compose.1panel.yml +++ b/backend/docker-compose.1panel.yml @@ -29,6 +29,9 @@ x-backend-build: &backend-build context: . dockerfile: Dockerfile.service.1panel +x-backend-build-args: &backend-build-args + MAVEN_MIRROR_URL: ${MAVEN_MIRROR_URL:-https://maven.aliyun.com/repository/public} + services: mysql: image: mysql:8.0 @@ -213,6 +216,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-gateway JAR_PREFIX: video-gateway container_name: haovp-video-gateway @@ -237,6 +241,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-auth JAR_PREFIX: video-auth container_name: haovp-video-auth @@ -260,6 +265,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-user JAR_PREFIX: video-user container_name: haovp-video-user @@ -290,6 +296,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-content JAR_PREFIX: video-content INSTALL_FFMPEG: "true" @@ -326,6 +333,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-comment JAR_PREFIX: video-comment container_name: haovp-video-comment @@ -349,6 +357,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-recommend JAR_PREFIX: video-recommend container_name: haovp-video-recommend @@ -372,6 +381,7 @@ services: build: <<: *backend-build args: + <<: *backend-build-args MODULE: video-admin JAR_PREFIX: video-admin container_name: haovp-video-admin