From 56f46aa433b5effb159ec3194727ae45148954a8 Mon Sep 17 00:00:00 2001 From: "MUH. IQRAM BAHRING" Date: Fri, 7 Aug 2026 08:35:49 +0800 Subject: [PATCH] chore(ci): disable gitbook pages workflow for fork, add healthcheck + geo env docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gitbook-pages.yml deployed to upstream org's 9router.github.io which a fork cannot (no GH_PAGES_DEPLOY_KEY) — renamed to .yml.disabled. Dockerfile gains a /api/health HEALTHCHECK. .env.example documents the new pool geostrobes env knobs (POOL_GEO_PROBE_DISABLED, GEO_PROBE_URL). --- .env.example | 6 ++++++ .../{gitbook-pages.yml => gitbook-pages.yml.disabled} | 0 Dockerfile | 4 ++++ 3 files changed, 10 insertions(+) rename .github/workflows/{gitbook-pages.yml => gitbook-pages.yml.disabled} (100%) diff --git a/.env.example b/.env.example index 6ed8f81e..0e77c7a8 100644 --- a/.env.example +++ b/.env.example @@ -39,3 +39,9 @@ NEXT_PUBLIC_CLOUD_URL=https://9router.com # Currently unused by application runtime (kept as reference) # INSTANCE_NAME=9router + +# Proxy egress geo probe (Proxy Fitness "Geo probe" toggle makes this a runtime +# setting too). These env vars are the hard override / advanced knobs for the +# background scheduler that samples each pool's egress IP+country. +# POOL_GEO_PROBE_DISABLED=1 # 1 = never run the geo probe +# GEO_PROBE_URL= # optional single custom endpoint (replaces the built-in 4-endpoint chain) diff --git a/.github/workflows/gitbook-pages.yml b/.github/workflows/gitbook-pages.yml.disabled similarity index 100% rename from .github/workflows/gitbook-pages.yml rename to .github/workflows/gitbook-pages.yml.disabled diff --git a/Dockerfile b/Dockerfile index 92822918..da8eaacb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -49,5 +49,9 @@ RUN apk --no-cache upgrade && apk --no-cache add su-exec && \ EXPOSE 20128 +# Health: Next serves /api/health (dashboardGuard public path). +HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \ + CMD node -e "fetch('http://127.0.0.1:20128/api/health').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))" + ENTRYPOINT ["/entrypoint.sh"] CMD ["node", "custom-server.js"]