青龙面板2.8+Ninja从零安装教程-转自网络

注意

新手建议保存好ck,重置系统从0安装。教程从0开始。

第一步 安装docker,docker-compose。

<span class="token comment">#安装docker
#安装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
</span>

安装完docker以后 安装docker-compos

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 重置一下密码。

方法:
cat /ql/config/auth.json,查看JSON内容
或者直接打开对应目录的这个文件,查看内容。
登陆青龙后拉取自动挂机代码:
docker exec -it qinglong ql repo https://ghproxy.com/https://github.com/chinnkarahoi/jd_scripts.git "jd_|jx_|getJDCookie" "activity|backUp" "^jd[^_]|USER"
进入容器,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

国内不可以上GITHUB的
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文件

将以下内容粘贴进去。

cd /ql/ninja/backend
git pull -f
pnpm install
pm2 start
cp sendNotify.js /ql/scripts/sendNotify.js

容器外

此种方式需要宿主机安装 

node

 

pnpm

 等环境,不做过多介绍。

使用此种方法无法跟随青龙一起启动,无法发送扫码通知,请知悉。

git clone https://github.com/MoonBegonia/ninja.git
cd ninja/backend
pnpm install
# 复制 sendNotify.js 到容器内 scripts 目录,
qinglong

为容器名
sudo docker cp sendNotify.js qinglong:/ql/scripts/sendNotify.js
cp .env.example .env
# 修改env文件
vi .env
node app.js
在 

.env

 文件中添加以下内容:

QL_DIR=qinglong 容器的本地路径
QL_URL=http://localhost:5700

目前支持的环境变量有:

- 
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 <span class="token operator">-</span>it qinglong bash
cd <span class="token operator">/</span>ql<span class="token operator">/</span>ninja<span class="token operator">/</span>backend
cp <span class="token operator">.</span>env<span class="token operator">.</span>example <span class="token operator">.</span>env

然后在文件管理器找到.env文件

1827480479

按需修改内容保存。

3598624096

修改完文件记得

pm2 start

Ninja更新方法

那么老样子打开Finalshell 按顺序复制粘贴代码

docker exec <span class="token operator">-</span>it qinglong bash
cd <span class="token operator">/</span>ql<span class="token operator">/</span>ninja<span class="token operator">/</span>backend
git pull
pm2 start

注意事项

 重启后务必执行一次 ql extra 保证 Ninja 配置成功。

 更新 Ninja 只需要在容器中 ninja/backend 目录执行 git pull 然后 pm2 start

 Qinglong 需要在登录状态(auth.json 中有 token)

常见问题

 Q:为什么我 git pull 失败?
 A:一般是修改过文件,先运行一次 git checkout . 再 gi t pull。

 Q:为什么访问不了?
 A:一般为端口映射错误/失败,请自行检查配置文件。

 Q:为什么访问白屏?
 A:使用现代的浏览器,而不是古代的。

关于Ninja弹窗通知

提供了弹窗的设置教程

在容器内打开

## 去除 Ninja 弹窗
sed -i "s/\(.*\){.\+提醒.\+\"},\(.*\)/\1\2/" /ql/ninja/backend/static/assets/index.5f39b46a.js

还原 Ninja 弹窗
sed -i "s/l,{footer/l,{title:\"Ninja 提醒您\",modelValue:e.dialogVisible,\"onUpdate:modelValue\":a[3]||(a[3]=a=>e.dialogVisible=a),center:\"\",\"destroy-on-close\":\"\",\"custom-class\":\"notice-dialog\",top:\"25vh\"},{footer/" /ql/ninja/backend/static/assets/index.5f39b46a.js

 

注意,使用此教程可能JS无法登陆,使用以下 代码进行更换

rm -rf /root/ql/ninja/backend/ql.js && rm -rf /root/ql/ninja/backend/user.js. && cd ql/ninja/backend && wget https://ghproxy.com/https://raw.githubusercontent.com/MoonBegonia/ninja/deda6f0c0207f2bc0e10454fdbe99b3a9f3878a8/backend/ql.js && https://ghproxy.com/https://raw.githubusercontent.com/MoonBegonia/ninja/deda6f0c0207f2bc0e10454fdbe99b3a9f3878a8/backend/user.js

 

 


                    
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享