type
Post
status
Published
date
Oct 18, 2024
slug
abc/3
summary
category
技术
tags
教程
icon
password
AI 摘要
😀
如果我们需要部署哪吒面板服务端,就得需要使用一台VPS进行部署。但使用VPS部署会有一定的风险,例如:被DDoS攻击、反代失效,服务器问题等…不过,由于fscarmen大佬(以下简称F佬)在容器云项目的研究,故在PaaS容器云平台部署哪吒得以实现。在这篇教程中,我将以他的项目为基础,一起在PaaS容器云平台部署哪吒探针
 

📝 准备材料

  • GitHub 账户
  • CloudFlare 账户,并准备一个域名
  • PaaS 容器云账户(以下使用Koyeb为演示平台)

准备需要用的变量

• 到 Cloudflare 官网,选择使用的域名,打开 网络 选项将 gRPC 开关打开
notion image
• 获取 github 认证授权: https://github.com/settings/applications/new
面板域名加上 https:// 开头,回调地址再加上 /oauth2/callback 结尾
notion image
notion image
• 获取 github 的 PAT (Personal Access Token): https://github.com/settings/tokens/new
notion image
notion image
• 创建 github 用于备份的私库: https://github.com/new
notion image

Argo 认证的获取方式: json 或 token

Argo 隧道认证方式有 json 和 token,使用两个方式其中之一。推荐前者,理由脚本会处理好所有的 Argo 隧道参数和路径,后者需要到 Cloudflare 官网手动设置,容易出错。

(方式 1 - Json):

通过 Cloudflare Json 生成网轻松获取 Argo 隧道 json 信息: https://fscarmen.cloudflare.now.cc
notion image
(方式 2 - Token): 通过 Cloudflare 官网,手动生成 Argo 隧道 token 信息
  • 进入 zero trust 里生成 token 隧道和信息。
  • 其中数据路径 443/https 为 proto.NezhaService
  • ssh 路径 22/ssh 为 < client id >
notion image
notion image
notion image
notion image

PaaS 部署实例

镜像 fscarmen/argo-nezha:latest , 支持 amd64 和 arm64 架构
用到的变量
变量名
是否必须
备注
GH_USER
github 的用户名,用于面板管理授权
GH_CLIENTID
在 github 上申请
GH_CLIENTSECRET
在 github 上申请
GH_BACKUP_USER
在 github 上备份哪吒服务端数据库的 github 用户名,不填则与面板管理授权的账户 GH_USER 一致
GH_REPO
在 github 上备份哪吒服务端数据库文件的 github 库
GH_EMAIL
github 的邮箱,用于备份的 git 推送到远程库
GH_PAT
github 的 PAT
REVERSE_PROXY_MODE
默认使用 Caddy 应用来反代,这时可以不填写该变量;如需 Nginx 或 gRPCwebProxy 反代,请设置该值为 nginx  或 grpcwebproxy
ARGO_AUTH
Json: 从 https://fscarmen.cloudflare.now.cc 获取的 Argo JsonToken: 从 Cloudflare 官网获取
ARGO_DOMAIN
Argo 域名
NO_AUTO_RENEW
默认不需要该变量,即每天定时同步在线最新的备份和还原脚本。如不需要该功能,设置此变量,并赋值为 1

Koyeb

notion image
notion image
notion image
notion image
notion image
 
eu.org域名申请教程CloudFlare+Github,打造属于自己的免费图床
Loading...