在 Synology 上建立 Cloudflare Tunnel
CLOUDFLARE tunnel on SYNOLOGY. (the raw way) Setup Synology 在 docker 目錄下建立資料夾,例如 cloudflare-tunnel。 下載 cloudflared/cloudflared 映像到 registry。 SSH 到 admin@synology。 變更 cloudflare-tunnel 擁有者,sudo chown -R 65532:65532 /volume1/docker/cloudflare-tunnel。 Run containers - cloudflared tunnel login 執行容器並掛載 volume docker/cloudflare-tunnel:/home/nonroot/.cloudflared。 在 network 分頁選擇 Use the same network as Docker Host。 在 environment 分頁加入指令 tunnel login。 到容器 log 複製登入 URL。 貼上 URL 到瀏覽器並授權 zone。 將容器設定 json 匯出到 cloudflare-tunnel 目錄。 - cloudflared tunnel create synology-tunnel 編輯 cloudflare-tunnel 目錄中的容器設定 json,修改 cmd 為 tunnel create synology-tunnel。 匯入容器設定 json 並執行新容器。 容器會停止,並在 cloudflare-tunnel 中建立 tunnel config json。 建立 config.yml 並撰寫 ingress 規則。 在 config.yml 中,tunnel 的值要與 tunnel config json 檔名一致,credentials-file 為 /home/nonroot/.cloudflared/tunnel config json。 將第二個容器設定 json 匯出到 cloudflare-tunnel 目錄。 - cloudflared tunnel route dns synology-tunnel synology.ruru910.com 編輯 cloudflare-tunnel 目錄中的第二個容器設定 json,修改 cmd 為 tunnel route dns synology-tunnel synology.ruru910.com。 匯入第二個容器設定 json 並執行新容器。 容器會停止並建立 DNS 紀錄,將網域指到 tunnel。 - cloudflared tunnel run synology-tunnel 編輯 cloudflare-tunnel 目錄中的第二個容器設定 json,修改 cmd 為 tunnel run synology-tunnel。 匯入第二個容器設定 json 並執行新容器。 Tunnel 現在可以連線使用。