如果我们需要部署哪吒面板服务端,就得需要使用一台VPS进行部署。但使用VPS部署会有一定的风险,例如:被DDoS攻击、反代失效等…不过,由于fscarmen大佬(以下简称F佬)在容器云项目的研究,故在PaaS容器云平台部署哪吒得以实现。在这篇教程中,我将以他的项目为基础,一起在PaaS容器云平台部署哪吒探针

准备材料

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

部署步骤

  1. 打开F佬的CF Argo Tunnel生成网:https://fscarmen.cloudflare.now.cc ,按照下图步骤获取隧道信息

  1. 进入CloudFlare控制台,在相应的域名 DNS 记录里加上客户端上报数据(tcp)和 ssh(可选)的域名,打开小云朵以启用 CDN


  1. 转到 网络 选项,将 gRPC 开关打开

  1. 设置新的OAuth授权应用,打开:https://github.com/settings/applications/new ,设置应用程序。面板域名加上 https:// 开头,回调地址再加上 /oauth2/callback 结尾


  1. 获取 GitHub 的 PAT (Personal Access Token): https://github.com/settings/tokens/new


  1. 创建 GitHub 用于备份的私库: https://github.com/new

  1. 打开Koyeb,创建一个新的APP。类型选择Docker

  1. 输入镜像名称:fscarmen/argo-nezha:latest

  1. 按照下图设置,下表为参考变量
变量名 是否必须 备注
GH_USER github 的用户名,用于面板管理授权
GH_CLIENTID 在 github 上申请
GH_CLIENTSECRET 在 github 上申请
GH_REPO 在 github 上备份哪吒服务端数据库文件的库
GH_EMAIL github 的邮箱,用于备份的 git 推送到远程库
GH_PAT github 的 PAT
ARGO_JSON 从 https://fscarmen.cloudflare.now.cc 获取的 Argo Json
DATA_DOMAIN 客户端与服务端的通信 argo 域名
WEB_DOMAIN 面板 argo 域名
SSH_DOMAIN ssh 用的 argo 域名
SSH_PASSWORD ssh 的密码,只有在设置 SSH_JSON 后才生效,默认值 password

  1. 等待1-2分钟,待出现Healthy即为成功部署。这时可以使用Argo的域名或者是PaaS平台的域名访问探针面板

项目地址

https://github.com/fscarmen2/Argo-Nezha-Service-Container