Ninja介绍
Ninja是@MoonBegonia大佬开发的一个开源安全的青龙面板扫码工具。
为了方便体验,个人搭建的参考学习 可以登录跑任务:http://jd.51kuaigouwu.com/ 截图如下:
什么是青龙面板:是配置任务ck管理后台等
截图如下:
注意
新手建议保存好ck,重置系统从0安装。教程从0开始。
第一步 安装docker,docker-compose。(容器)
#安装docker
sudo yum check-update
curl -sSL https://get.daocloud.io/docker | sh
sudo systemctl start docker
sudo systemctl status docker
sudo systemctl enable docker
安装完docker以后 安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
不想重置系统就删除容器
docker stop $(docker ps -a -q) // stop停止所有容器
docker rm $(docker ps -a -q) // remove删除所有容器
第二步
在root文件夹下创建一个目录,目录内创建docker-compose.yml
填入一下内容
version: "3"
services:
qinglong:
image: whyour/qinglong:latest
container_name: qinglong
restart: unless-stopped
tty: true
ports:
- 5700:5700
- 5701:5701
environment:
- ENABLE_HANGUP=true
- ENABLE_WEB_PANEL=true
volumes:
- ./config:/ql/config
- ./log:/ql/log
- ./db:/ql/db
- ./repo:/ql/repo
- ./raw:/ql/raw
- ./scripts:/ql/scripts
- ./jbot:/ql/jbot
- ./ninja:/ql/ninja
labels:
- com.centurylinklabs.watchtower.enable=false
命令行里cd进docker-compose.yml所在的文件夹,执行命令
docker-compose up -d
run模式
docker run -dit \
-v $PWD/ql/config:/ql/config \
-v $PWD/ql/log:/ql/log \
-v $PWD/ql/db:/ql/db \
-v $PWD/ql/repo:/ql/repo \
-v $PWD/ql/raw:/ql/raw \
-v $PWD/ql/scripts:/ql/scripts \
-v $PWD/ql/jbot:/ql/jbot \
-v $PWD/ql/ninja:/ql/ninja \
-p 5700:5700 \
-p 5701:5701 \
--name qinglong \
--hostname qinglong \
--restart unless-stopped \
whyour/qinglong:latest
然后登录ip:5700 重置一下密码。(必须修改密码下)
【修改密码在/root/ql/config-auth.json下面】
初次登陆如43.128.37.888
http://43.128.37.888:5700 150.109.118.888:5700
初次访问 http://<43.128.37.888>:5700
使用 admin/adminadmin 登陆,提示已初始化密码
去自己映射目录config下找 auth.json,查看里面的 password
docker exec -it qinglong cat /ql/config/auth.json
进入容器
安装ninja
ql为容器名 本文机器容器名为qinglong (下面是进入容器的命令)
docker exec -it qinglong bash
执行以下命令
git clone https://github.com/MoonBegonia/ninja.git /ql/ninja
cd /ql/ninja/backend
pnpm install
pm2 start
cp sendNotify.js /ql/scripts/sendNotify.js
国内机器
git clone https://ghproxy.com/https://github.com/MoonBegonia/ninja.git /ql/ninja
cd /ql/ninja/backend
pnpm install
pm2 start
cp sendNotify.js /ql/scripts/sendNotify.js
第三步
打开青龙configs文件夹的extra.sh文件(路径/root/ql/config)每个人不一样
将以下内容粘贴进去。
cd /ql/ninja/backend
git pull -f
pnpm install
pm2 start
cp sendNotify.js /ql/scripts/sendNotify.js
Ninja 环境变量
目前支持的环境变量有:
- `ALLOW_ADD`: 是否允许添加账号 不允许添加时则只允许已有账号登录(默认 `true`)
- `ALLOW_NUM`: 允许添加账号的最大数量(默认 `40`)
- `NINJA_PORT`: Ninja 运行端口(默认 `5701`)
- `NINJA_NOTIFY`: 是否开启通知功能(默认 `true`)
- `NINJA_UA`: 自定义 UA,默认为随机
##配置方式:
cd /ql/ninja/backend
cp .env.example .env
vi .env
pm2 start
修改完成后需要 pm2 start 重启生效 !!!
sendNotify 环境变量
Ninja目前支持的环境变量有:
ALLOW_ADD: 是否允许添加账号 不允许添加时则只允许已有账号登录(默认 true)
ALLOW_NUM: 允许添加账号的最大数量(默认 40)
NINJA_PORT: Ninja 运行端口(默认 5701)
NINJA_NOTIFY: 是否开启通知功能(默认 true)
NINJA_UA: 自定义 UA,默认为随机
此环境变量在青龙中配置!!!
NOTIFY_SKIP_LIST: 通知黑名单,使用 & 分隔,例如 东东乐园&东东萌宠;
那么老样子打开Finalshell 按顺序复制粘贴代码
docker exec -it qinglong bash
cd /ql/ninja/backend
cp .env.example .env
然后在文件管理器找到.env文件
按需修改内容保存。
修改完文件记得
pm2 start
Ninja更新方法
打开Finalshell 按顺序复制粘贴代码
docker exec -it qinglong bash
cd /ql/ninja/backend
git pull
pm2 start
更新 Ninja 只需要在容器中 ninja/backend 目录执行 git pull 然后 pm2 start
Qinglong 需要在登录状态(auth.json 中有 token)
常见问题 Q:为什么我 git pull 失败? A:一般是修改过文件,先运行一次 git checkout . 再 gi t
pull。
Q:为什么访问不了? A:一般为端口映射错误/失败,请自行检查配置文件。
Q:为什么访问白屏? A:使用现代的浏览器,而不是古代的。
以上最终完成。
那么都搭建好了 ,下一步就是在青龙面板拉取任务仓库。
打开你的青龙面板后台:
找到定时任务
按照截图添加任务,然后执行跑就可以了。
仓库我就推荐2个比较全的。2个仓库只要1个就可以了,不然任务重复浪费资源。
【Faker集合仓库】国内鸡命令
ql repo https://ghproxy.com/https://github.com/shufflewzc/faker2.git "jd_|jx_|gua_|jddj_|getJDCookie" "activity|backUp" "^jd[^_]|USER|ZooFaker_Necklace.js|JDJRValidator_Pure|sign_graphics_validate"
怨念仓库
ql repo https://ghproxy.com/https://github.com/yuannian1112/jd_scripts.git "jd_|jx_|getJDCookie" "activity|backUp" "^jd[^_]|USER|utils"
好了 有问题联系q1550389507 ,群暂时没搞,免费分享经验。也没那么多时间。
部分自己用的命令
更新青龙
docker exec -it qinglong ql update
更新青龙并编译
docker exec -it qinglong ql check
启动bot
docker exec -it qinglong ql check
删除7天前的所有日志
docker exec -it qinglong ql rmlog 7
通知测试
docker exec -it qinglong notify test test
立即执行脚本
docker exec -it qinglong task test.js now
并行执行脚本
docker exec -it qinglong task test.js conc
重要 忘记说了,有的人安装扫码失败。
去改一下:NINJA_UA 简称UA
Mozilla/5.0 (iPhone; U; CPU iPhone OS 14_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5 UCBrowser/13.4.2.1122