From c0cbdb5efc00715ceefff00e5c9cc9abac38e980 Mon Sep 17 00:00:00 2001 From: HomeDash Bot Date: Sat, 12 Sep 2026 09:37:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(deploy):=20=E8=A1=A5=E9=A6=96=E8=A3=85?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=EF=BC=8C=E4=BD=BF=E4=BB=96=E4=BA=BA/AI=20?= =?UTF-8?q?=E5=8F=AF=E7=85=A7=E6=95=99=E7=A8=8B=E4=BB=8E=E9=9B=B6=E9=83=A8?= =?UTF-8?q?=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 审计发现 5 处断点(3 处硬阻断): 1. Dockerfile 的 HTTP_PROXY/HTTPS_PROXY 默认指向内网代理 → 他人构建必失败 2. zd-host.sh 是升级脚本(要求已存在 host 模式 navi 容器)→ 新机器第一句过不去 3. docker-compose.yml 是桥接+端口映射,与'统一入口 host 模式'口径冲突 4. 证书文件名约定未文档化(实际来自 gateway.yml 的 certFile/keyFile) 5. 环境变量表不完整、缺 sshpass 依赖说明 本次: - Dockerfile:代理默认置空,需要时 --build-arg 传入 - deploy/install-host.sh(新):干净机器首次安装,6 步并在任一步失败即停, 含端口独占检查、证书检查、初始 gateway.yml 生成、apply、四项自检, 令牌可自动生成并只打印一次;已存在 navi 容器时拒绝执行(引导去 zd-host.sh) - docker-compose.yml:标注为试用形态,指向 install-host.sh - README:新增「从零部署(干净机器)」——两条路径分工表、前置条件表、 完整环境变量表、证书与初始网关配置说明、装完自检命令;自定义文件表登记新脚本 另修:脚本自检原用 /.navi-ping(该路径已按用户要求删除),改用 /conf.yml。 --- Dockerfile | 5 +- README.md | 80 ++++++++++++++++++ deploy/install-host.sh | 186 +++++++++++++++++++++++++++++++++++++++++ docker-compose.yml | 3 + 4 files changed, 272 insertions(+), 2 deletions(-) create mode 100755 deploy/install-host.sh diff --git a/Dockerfile b/Dockerfile index de4b4e9..4b62c02 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,8 +16,9 @@ RUN GOPROXY=https://goproxy.cn,direct go mod tidy && CGO_ENABLED=0 go build -tri # ── Stage 2: SearXNG from source ── FROM debian:bookworm-slim AS searxng-build -ARG HTTP_PROXY=http://172.17.0.1:7890 -ARG HTTPS_PROXY=http://172.17.0.1:7890 +# 需要代理时用 --build-arg 传入(默认不设,保证他人环境可直接构建) +ARG HTTP_PROXY= +ARG HTTPS_PROXY= ENV DEBIAN_FRONTEND=noninteractive ENV http_proxy=${HTTP_PROXY} diff --git a/README.md b/README.md index 924a9cd..ff8d055 100644 --- a/README.md +++ b/README.md @@ -437,6 +437,85 @@ curl -s https://<域名>/ | grep -c '