From f8d02468db81c3715224733c4f00026596e7c166 Mon Sep 17 00:00:00 2001 From: xuqinmin12 Date: Fri, 12 Jun 2026 18:46:37 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=87=AA=E5=8A=A8=E6=A3=80=E6=B5=8B?= =?UTF-8?q?=E5=B9=B6=E9=85=8D=E7=BD=AE=20Docker=20Hub=20=E5=9B=BD=E5=86=85?= =?UTF-8?q?=E9=95=9C=E5=83=8F=E5=8A=A0=E9=80=9F=EF=BC=88XUQM=5FSUDO=5FPASS?= =?UTF-8?q?=20=E6=94=AF=E6=8C=81=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- install.sh | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/install.sh b/install.sh index 0e23eb3..f0860eb 100755 --- a/install.sh +++ b/install.sh @@ -13,9 +13,10 @@ # bash <(curl -fsSL https://xuqinmin.com/xuqmGroup/XuqmGroup-PrivateDeploy/raw/branch/main/install.sh) # # 环境变量(可选): -# DEPLOY_HOST 目标机器 IP / 主机名(默认自动检测本机 IP) -# INSTALL_DIR 安装目录(默认 /opt/xuqm-private) -# XUQM_BRANCH Gitea 分支(默认 main) +# DEPLOY_HOST 目标机器 IP / 主机名(默认自动检测本机 IP) +# INSTALL_DIR 安装目录(默认 /opt/xuqm-private) +# XUQM_BRANCH Gitea 分支(默认 main) +# XUQM_SUDO_PASS sudo 密码(非 root 用户需配置 Docker 镜像加速时使用) set -euo pipefail @@ -130,6 +131,30 @@ if c.get('credsStore', '').endswith('.exe'): PYEOF fi +# 配置 Docker Hub 镜像加速(国内网络 Docker Hub 不可达时自动启用) +_DAEMON_CFG="/etc/docker/daemon.json" +if ! curl -fsS --max-time 5 https://registry-1.docker.io/v2/ >/dev/null 2>&1; then + info "Docker Hub 不可达,尝试配置国内镜像加速..." + _MIRRORS='{"registry-mirrors":["https://docker.mirrors.ustc.edu.cn","https://hub-mirror.c.163.com","https://mirror.baidubce.com"]}' + _configured=0 + if [ "$(id -u)" -eq 0 ]; then + printf '%s\n' "$_MIRRORS" > "$_DAEMON_CFG" && _configured=1 + elif [ -n "${XUQM_SUDO_PASS:-}" ]; then + printf '%s\n' "$XUQM_SUDO_PASS" | sudo -S sh -c "printf '%s\n' '$_MIRRORS' > $_DAEMON_CFG" 2>/dev/null && _configured=1 + elif sudo -n true 2>/dev/null; then + sudo sh -c "printf '%s\n' '$_MIRRORS' > $_DAEMON_CFG" && _configured=1 + fi + if [ "$_configured" -eq 1 ]; then + service docker restart 2>/dev/null || \ + { [ -n "${XUQM_SUDO_PASS:-}" ] && printf '%s\n' "$XUQM_SUDO_PASS" | sudo -S service docker restart 2>/dev/null; } || \ + sudo -n service docker restart 2>/dev/null || true + sleep 3 + ok "Docker Hub 镜像加速已配置" + else + warn "无法配置镜像加速(需 root 或 XUQM_SUDO_PASS);若 Docker Hub 不可达,镜像拉取可能失败" + fi +fi + # --------------------------------------------------------------------------- # Step 3 — 确认 Docker Compose v2 # ---------------------------------------------------------------------------