ClawCloud——爪云容器自动登录保活

ClawCloud——爪云容器自动登录保活

免费的 爪云容器,用超过 180 天的 github 账号绑定,可获得每月 5 美元的免费额度。由于其近期修改了免费政策,需要每月登录一次,否则已注册的账号将被收回,因此,自动登录保活成为保有账号的必要手段

核心功能

1. 应用部署与管理 (App Launchpad)

这是其最核心的容器管理组件,旨在让用户无需编写复杂的 YAML 文件即可运行应用:

  • 一键式部署: 支持直接从公共仓库(如 Docker Hub)或私有镜像仓库拉取镜像并启动。
  • 可视化配置: 通过控制面板直接设置应用名称、镜像地址、启动命令及参数。
  • 配置注入: 支持通过 UI 界面动态注入 环境变量,并能以挂载文件的形式上传应用所需的配置文件(如 config.yaml 或数据库连接配置)。

2. 开发工具集成 (Devbox)

  • IDE 集成: 提供在线开发环境,支持与主流 IDE(如 VS Code)的深度集成。
  • GitOps 工作流: 支持与 GitHub 联动,实现代码提交后自动触发构建和部署流程。

3. 数据库支持 (Database)

  • 支持类型:MySQL, PostgreSQL, MongoDB, Redis,
  • 允许内部容器应用通过内网一键连接
  • 也支持配置公网访问以便于外部调试

4. 对象存储支持 (Object Storage)

  • S3 兼容性: 支持标准的 S3 接口和多语言 SDK,迁移和集成非常方便。
  • Bucket 管理: 可以在后台轻松创建 Bucket,并设置访问权限(私有、公共读、公共读写)。
  • 静态网站托管: 支持将 Bucket 作为静态网站托管,并提供自动 URL 生成和自定义域名绑定功能。

登录保活

首先感谢 oyz8 这位大佬搞定了爪云的自动登录,不得不说作者脑洞挺大,由于爪云只能以 github 或 google 跳转登录,不支持用户名/密码的方式,也未开放官方 API 接口,所以其自动登录很难实现。但这位大佬居然想到用 TG 发送设备验证码 / 2FA 验证码的方式实现登录,不得不佩服一下

1. 基本逻辑

PY 安装 chrome→模拟访问爪云主页→点击 github 登录→github 验证→写入身份凭证 GH_SESSION 到 action secret→登录成功→发送 TG 通知

  • 验证方式 1:2FA 验证码——在返回的 TG 消息中输入 /code 验证码/code github恢复码 并发送。需要先安装谷歌身份验证器 Authenticator 或其他验证器,如 bitward
  • 验证方式 2:在 github 设置页将 2FA 验证改为 github mobile app 优先,在 app 中输入 TG 收到的截图中的验证码。需要先安装 github app

2. 实操

先 FORK 原仓库我的仓库

第一步:fork 并修改代码

找到 clawcloud-run/auto-login.py 文件,修改约第 18 行:

1
CLAW_CLOUD_URL = "https://eu-central-1.run.claw.cloud"

将上述 URL 改为你的账号对应的地区:

地区 URL
新加坡 https://ap-southeast-1.run.claw.cloud
美东 https://us-east-1.run.claw.cloud
美西 https://us-west-1.run.claw.cloud
德国 https://eu-central-1.run.claw.cloud
日本 https://ap-northeast-1.run.claw.cloud

第二步:设置环境变量

打开仓库设置页,添加以下环境变量:

变量名 变量值 说明 是否必须
GH_USERNAME github 用户名 与爪云绑定的 github 账号 必须
GH_PASSWORD github 密码 与爪云绑定的 github 账号 必须
GH_SESSION 身份验证凭据 无需填写,脚本自动生成 必须
TG_BOT_TOKEN TG 机器人 token 发送登录验证码 必须
TG_CHAT_ID TG 机器人 ID 发送登录验证码 必须
GH_TOKEN github 个人访问令牌 与爪云绑定的 github 账号 必须

image.png

第三步:运行工作流

点击仓库上方的 action 标签,找到 ClawCloud 自动登录 工作流,运行它

image.png

第四步:身份验证(关键)

情况一:2FA 身份验证器方式

首先需要安装谷歌的身份验证器或者其他验证器

action 运行过程中会向 TG 发送截图,要求输入验证码,输入 /code 身份验证器上的 6 位码,点击发送,如 /code 123456

image.png

如果失败,也可以不用身份验证器,输入 /code github恢复码

依次点击 github 头像的设置(不是仓库设置)→ Password and authentication,拉到最下面,找到 Recovery codes,点击 view,选择其中一组恢复码,在 TG 中输入 /code 恢复码,点击发送

image.png

操作完成后,工作流会继续执行,直至 action 日志输出成功提示!

情况二:github app 设置验证方式(推荐)

这种相对简单,也不容易出错,是作者推荐的方式,需要先将 github 的身份认证设置为 github mobile,并安装 github 手机版 app

image.png

action 运行过程中,会向 TG 发送 2 位数验证码的截图,打开 github app,会自动弹出验证窗口,输入截图中的 2 位数字,点击批准,等待验证通过

image.png

action 会继续运行,登录成功后会向 TG 发送登录成功的消息

image.png

至此,保活已完成,后续不再需要手动,action 会自动执行

作者默认的设置是每 10 天自动登录一次

#容器 #github #TG