如何部署就不赘述了,网上很多文章都有介绍。
今天早上发现自制的黑铁威马NAS的内存占用达到了70%,(安装的是一根2G的内存条),再一看发现是docker的容器很吃内存。
我运行了一个librespeed测速服务器,一个自动签到,一个青龙面板。可以看到青龙面板和自动签到就占用了接近1.2GB的内存。
然后拆机更换为一根4GB的内存,由于当初配置的时候设置的镜像是不自动启动的,所以必须手工启动它们。结果手贱在自动重新启动应用前面打了对勾并按下了应用,等了好久还是打不开青龙面板的页面,再一看青龙的容器居然被删除了!
瞬间一万个羊驼从脑海奔过,这特么的真是一个手贱导致要浪费大把时间的节奏啊,关键是距上一次从0开始设置已经过去几个月时间了,都已经忘记了具体操作步骤了。
没办法,这次就多花点时间精力记录一下,免得下次设置时候又要浪费时间搜索爬文。
青龙面板运行后设置完账户密码,登录到面板界面。
然后在ssh下面用root用户运行
docker ps
显示所有容器。
然后选择你需要进入的容器名称,比如我的青龙是f8ed1db3309c
运行docker exec -it f8ed1db3309c /bin/bash 进入青龙容器
然后运行ql check,坐等一两分钟,会输出下面一堆信息。
/ql/shell/check.sh: line 94: /root/.bashrc: No such file or directory
## 开始执行… 2022-10-18 08:23:34
=====> 开始检测
changed 1 package in 21s
Progress: resolved 1, reused 0, downloaded 0, added 0
Progress: resolved 3, reused 0, downloaded 3, added 0
Progress: resolved 4, reused 0, downloaded 3, added 0
Progress: resolved 35, reused 0, downloaded 17, added 0
Progress: resolved 54, reused 0, downloaded 34, added 0
Progress: resolved 83, reused 2, downloaded 57, added 0
WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
Progress: resolved 127, reused 7, downloaded 95, added 0
Progress: resolved 174, reused 14, downloaded 133, added 0
Packages: +3 -2
+++–
Progress: resolved 198, reused 17, downloaded 179, added 3, done
/root/.local/share/pnpm/global/5:
– pm2 5.2.0
+ pm2 5.2.2
WARN Issues with peer dependencies found
.
└─┬ ts-node 10.9.1
└── ✕ missing peer @types/node@”*”
Peer dependencies that should be installed:
@types/node@”*”
Done in 10.9s
—> 1. 复制通知文件
—> 复制一份 /ql/sample/notify.py 为 /ql/data/scripts/notify.py
‘/ql/sample/notify.py’ -> ‘/ql/data/scripts/notify.py’
—> 复制一份 /ql/sample/notify.js 为 /ql/data/scripts/sendNotify.js
‘/ql/sample/notify.js’ -> ‘/ql/data/scripts/sendNotify.js’
—> 通知文件复制完成
—> 2. 复制nginx配置文件
‘/ql/docker/nginx.conf’ -> ‘/etc/nginx/nginx.conf’
‘/ql/docker/front.conf’ -> ‘/etc/nginx/conf.d/front.conf’
—> 配置文件复制完成
=====> 检测面板
<!DOCTYPE html>
<html>
<head>
<meta charset=”utf-8″ />
<meta
name=”viewport”
content=”width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no”
/>
<link rel=”shortcut icon” type=”image/x-icon” href=”/images/favicon.svg” />
<link rel=”stylesheet” href=”/umi.1a1e4a3d.css” />
<script>
window.routerBase = “/”;
</script>
<script>
//! umi version: 3.5.34
</script>
</head>
<body>
<div id=”root”></div>
<script src=”https://gw.alipayobjects.com/os/lib/react/16.13.1/umd/react.production.min.js”></script>
<script src=”https://gw.alipayobjects.com/os/lib/react-dom/16.13.1/umd/react-dom.production.min.js”></script>
<script src=”/umi.171fdc21.js”></script>
</body>
</html>
=====> 面板服务启动正常
=====> 检测nginx服务
94 root 0:00 nginx: master process nginx -c /etc/nginx/nginx.conf
95 root 0:00 nginx: worker process
96 root 0:00 nginx: worker process
=====> nginx服务正常
—> pm2日志
2022-10-18T07:26:42: info: ✌️ DB loaded
2022-10-18T07:26:42: info: ✌️ Init file down
2022-10-18T07:26:43: info: ✌️ Sentry loaded
2022-10-18T07:26:45: info: ✌️ Dependency Injector loaded
2022-10-18T07:26:45: info: ✌️ Express loaded
2022-10-18T07:26:45: info: ✌️ init data loaded
2022-10-18T07:26:45: info: ✌️ link deps loaded
2022-10-18T07:26:45: info: ✌️ init task loaded
2022-10-18T07:26:46: info: ✌️ Sock loaded
2022-10-18T07:26:46: info: [创建interval任务],任务ID: token,任务名: 生成token,执行命令: node /ql/static/build/token.js
2022-10-18T07:26:46: debug: ✌️ Back server launched on port 5600
2022-10-18T07:26:47: info: 任务 node /ql/static/build/token.js 进程id: 228 退出,退出码 0
2022-10-18T08:16:49: info: [取消定时任务],任务名:KR
2022-10-18T08:16:49: info: [创建cron任务],任务ID: 1,cron: 0 1 * * *,任务名: KR,执行命令: ql repo “https://github.com/KingRan/KR.git” “” “” “” “” “”
2022-10-18T08:17:12: error: 执行任务 ql repo “https://github.com/KingRan/KR.git” “” “” “” “” “” 失败,时间:2022-10-18 8:17:12, 错误信息:”Cloning into ‘/ql/data/repo/KingRan_KR’…\n”
2022-10-18T08:18:59: info: 任务 task KingRan_KR/h5st.ts 进程id: 10679 退出,退出码 0
2022-10-18T08:19:17: info: 任务 task KingRan_KR/jd_bean_change_pro.js 进程id: 12067 退出,退出码 0
2022-10-18T08:23:15: info: 任务 ql repo “https://github.com/KingRan/KR.git” “” “” “” “” “” 进程id: 239 退出,退出码 0
=====> 检测后台
{“code”:401,”message”:”jwt malformed”}
=====> 后台服务启动正常
启动面板服务
启动定时任务服务
启动公开服务
=====> 检测结束
## 执行结束… 2022-10-18 08:24:20 耗时 46 秒
运行之后应该就解决了脚本的依赖关系的问题。不用手工一个个去设置了。
再然后去青龙面板添加名称为JD_COOKIE的变量,填入你的cookie即可,至于如何获取京东cookie,大家自行搜索爬文,这里就不赘述了。
再接下来去青龙面板的订阅管理里面按下图添加KR库然后运行一下即可,各个脚本就会被添加到定时任务里面。
对了,在运行订阅管理脚本之前去青龙面板的配置文件里,改一下下面这个参数即可,加上ts。
## ql repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
RepoFileExtensions=”js py ts”
搞定。
20221021 update
还是需要在青龙面板里面手工安装依赖的
NodeJs 依赖库
crypto-js
prettytable
dotenv
jsdom
date-fns
tough-cookie
tslib
ws@7.4.3
ts-md5
jsdom -g
jieba
fs
form-data
json5
global-agent
png-js
@types/node
require
typescript
js-base64
axios
moment
got
md5
request
download
tunnel
ws
qrcode-terminal
Python3 依赖库
requests
canvas
ping3
jieba
aiohttp
Linux 依赖库安装失败,不清楚是什么情况。
bizCode
bizMsg
lxml