LOADING

最新版青龙搭建教程

网络9个月前更新 woohong
1.6K 1 0
内容纲要

 

最新版青龙搭建教程

青龙

支持python3、javaScript、shell、typescript 的定时任务管理面板

最新版青龙搭建教程 最新版青龙搭建教程 最新版青龙搭建教程 最新版青龙搭建教程

最新版青龙搭建教程

简体中文 | English

功能

  • 支持多种脚本语言(python3、javaScript、shell、typescript)
  • 支持在线管理脚本、环境变量、配置文件
  • 支持在线查看任务日志
  • 支持秒级任务设置
  • 支持系统级通知
  • 支持暗黑模式
  • 支持手机端操作

部署

本机部署

# 待完善,可先参考开发步骤

podman 部署

  1. podman 安装
    https://podman.io/getting-started/installation
  2. 启动容器
    podman run -dit \
      --network bridge \
      -v $PWD/ql/data:/ql/data \
      -p 5700:5700 \
      --name qinglong \
      --hostname qinglong \
      docker.io/whyour/qinglong:latest

docker 部署

  1. docker 安装
    sudo curl -sSL get.docker.com | sh
  2. 配置国内镜像源 Configure domestic mirror sources
    mkdir -p /etc/docker
    tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": [
        "https://0b27f0a81a00f3560fbdc00ddd2f99e0.mirror.swr.myhuaweicloud.com",
        "https://ypzju6vq.mirror.aliyuncs.com",
        "https://registry.docker-cn.com",
        "http://hub-mirror.c.163.com",
        "https://docker.mirrors.ustc.edu.cn"
      ]
    }
    EOF
    systemctl daemon-reload
    systemctl restart docker

     

  3. 启动容器
    docker run -dit \
      -v $PWD/ql/data:/ql/data \
      -p 5700:5700 \
      --name qinglong \
      --hostname qinglong \
      --restart unless-stopped \
      whyour/qinglong:latest

docker-compose 部署

  1. docker-compose 安装
    sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
    
  2. 启动容器
    mkdir qinglong
    wget https://raw.githubusercontent.com/whyour/qinglong/master/docker/docker-compose.yml
    
    # 启动
    docker-compose up -d
    # 停止
    docker-compose down
  3. 访问

打开你的浏览器,访问 http://{ip}:5700

使用

  1. 内置命令
    # 更新并重启青龙
    ql update                                                    
    # 运行自定义脚本extra.sh
    ql extra                                                     
    # 添加单个脚本文件
    ql raw <file_url>                                             
    # 添加单个仓库的指定脚本
    ql repo <repo_url> <whitelist> <blacklist> <dependence> <branch> <extensions>
    # 删除旧日志
    ql rmlog <days>                                              
    # 启动tg-bot
    ql bot                                                       
    # 检测青龙环境并修复
    ql check                                                     
    # 重置登录错误次数
    ql resetlet                                                  
    # 禁用两步登录
    ql resettfa                                                  
    
    # 依次执行,如果设置了随机延迟,将随机延迟一定秒数
    task <file_path>                                             
    # 依次执行,无论是否设置了随机延迟,均立即运行,前台会输出日,同时记录在日志文件中
    task <file_path> now                                         
    # 并发执行,无论是否设置了随机延迟,均立即运行,前台不产生日,直接记录在日志文件中,且可指定账号执行
    task <file_path> conc <env_name> <account_number>(可选的) 
    # 指定账号执行,无论是否设置了随机延迟,均立即运行 
    task <file_path> desi <env_name> <account_number>         
  2. 参数说明
  • file_url: 脚本地址
  • repo_url: 仓库地址
  • whitelist: 拉取仓库时的白名单,即就是需要拉取的脚本的路径包含的字符串,多个竖线分割
  • blacklist: 拉取仓库时的黑名单,即就是需要拉取的脚本的路径不包含的字符串,多个竖线分割
  • dependence: 拉取仓库需要的依赖文件,会直接从仓库拷贝到scripts下的仓库目录,不受黑名单影响,多个竖线分割
  • extensions: 拉取仓库的文件后缀,多个竖线分割
  • branch: 拉取仓库的分支
  • days: 需要保留的日志的天数
  • file_path: 任务执行时的文件路径
  • env_name: 任务执行时需要并发或者指定时的环境变量名称
  • account_number: 任务执行时指定某个环境变量需要执行的账号序号

 

一、拉库命令

【注意】不可同时拉多个集合库,同时拉多个集合库容易黑ip,保留一个即可。
拉了好几个大库的记得运行一下去重脚本。
设置Proxyurl:
老版青龙,需要设置config.sh(如果还有extra.sh的话,也改)中的GithubProxyUrl改为
https://git.metauniverse-cn.com/
添加一个定时任务,定时拉库命令,就可以定时更新仓库。可设置为 0 /12 每天0点和12点运行一次更新。

拉库一直失败的,可以自己寻找代理或者留言,我提供临时代理。

1. KingRan库【推荐❤❤❤❤❤】

ql repo https://github.com/KingRan/KR.git "jd_|jx_|jdCookie" "activity|backUp" "^jd[^_]|USER|utils|function|sign|sendNotify|ql|JDJR"

 

2.Faker3【集合库(很多重复任务,自己禁用)❤❤❤❤】

ql repo https://git.metauniverse-cn.com/https://github.com/shufflewzc/faker3.git "jd_|jx_|gua_|jddj_|jdCookie" "activity|backUp" "^jd[^_]|USER|function|utils|sendNotify|ZooFaker_Necklace.js|JDJRValidator_|sign_graphics_validate|ql|JDSignValidator|magic|depend|h5sts" "main"

 

4. 环境保护【推荐❤❤❤❤】

ql repo https://github.com/feverrun/my_scripts.git "jd_|jx_|jddj_|getCookie|getJDCookie" "backUp/activity|backUp/card|backUp/py|backUp/utils/|backUp/test|jd_fruits.js|jd_pet.js|jd_factory.js|jd_health.js|jd_sgmh.js|jd_dreamFactory.js|jd_plantBean.js" "^(jd|JD|JS)[^_]|USER|sendNotify|utils"

 

5. ccwav大佬的通知增强版和CK检测

 //不包含sendNotify:

ql repo https://github.com/ccwav/QLScript2.git "jd_" "sendNotify|NoUsed" "ql"

 

//包含sendNotify:

ql repo https://github.com/ccwav/QLScript2.git "jd_" "NoUsed" "ql|sendNotify"

 

6.【619】【集合库,可选】

ql repo https://github.com/gys619/jdd.git "jd_|jx_|jddj_|gua_|getJDCookie|wskey" "activity|backUp" "^jd[^_]|USER|utils|ZooFaker_Necklace|JDJRValidator_|sign_graphics_validate|jddj_cookie|function|ql|magic|JDJR|JD" "main"

 

7 .【zero205】【集合库,推荐拉KR即可】

ql repo https://github.com/zero205/JD_tencent_scf.git "jd_|jx_|jdCookie" "backUp|icon" "^jd[^_]|USER|sendNotify|sign_graphics_validate|JDJR|JDSign|ql" "main"

 

8 .【6dylan6/jdpro】

ql repo https://github.com/6dylan6/jdpro.git "jd_|jx_|jddj_" "backUp" "^jd[^_]|USER|JD|function|sendNotify"

 

9 .【青蛙/smiek2121】

ql repo https://github.com/smiek2121/scripts.git "jd_|gua_" "" "^jd[^_]|USER|utils|sendNotify|ZooFaker|JDJRValidator_|^sign|cleancart_"

 

10 .【船长】

ql repo https://github.com/HarbourJ/HarbourToulu.git "jd_" "activity|backUp|jd_sign" "^jd[^_]|USER|utils|ZooFaker_Necklace|JDJRValidator_|sign_graphics_validate|jddj_cookie|function|ql|magic|JDJR|JD|sendNotify" "main"

 

二、一些依赖可供参考

3、配置青龙依赖

配置依赖有2种方式,推荐使用第一种。

3.1 一键脚本配置

直接在宝塔面板终端中输入指令即可。

docker exec -it qinglong bash;
curl -fsSL https://ghproxy.com/https://raw.githubusercontent.com/shufflewzc/QLDependency/main/Shell/QLOneKeyDependency.sh | sh

如果你使用的是国内服务器,并且上述命令超时,可尝试加速版:

curl -fsSL https://api.dujin.org/js/qinglong/qinglong-yilaiku-dujin.org.sh | sh

海外服务器可以使用这个:

curl -fsSL https://raw.githubusercontent.com/FlechazoPh/QLDependency/main/Shell/QLOneKeyDependency.sh | sh

3.2 手动添加配置

在青龙面板-依赖管理中手动添加以下依赖,添加时勾选自动拆分。

3.2.1 NodeJs下

NodeJs里面所需依赖 添加依赖--->选择自动拆分,把以下内容全部复制到名称里,之后点击确定

js-base64
dotenv
magic
tough-cookie
[email protected]
require
requests
date-fns
ts-md5
typescript
json5
[email protected]
crypto-js
@types/node
png-js
node-telegram-bot-api
fs
jsdom
form-data
jieba
tslib
ds
jsdom -g
prettytable
ql
common
node-jsencrypt
juejin-helper
moment
global-agent
cheerio
wget
redis
 

3.2.2 Python3下

Python3依赖 添加依赖--->选择自动拆分,把以下内容全部复制到名称里,之后点击确定

jieba
PyExecJS
ping3
canvas
Crypto
ds
requests
pycryptodome

 


3.2.3

Linux下-新版青龙可不管这个依赖

Linux依赖 添加依赖--->选择自动拆分,把以下内容全部复制到名称里,之后点击确定

libc-dev
gcc
g++
libffi-dev
python3-dev

 


-依赖安装失败的,可以点击重新安装,若一直失败,请重启服务后安装。

4、登录青龙面板

浏览器打开 ip:5700,这里的ip是你服务器的公网ip,如:123.123.123:5700
-注意,没开放5700端口是访问不了的喔~

 

一些定时规则

(1)0 0 2 1 * ? 表示在每月的1日的凌晨2点调整任务   

(2)0 15 10 ? * MON-FRI 表示周一到周五每天上午10:15执行作业   

(3)0 15 10 ? 6L 2002-2006 表示2002-2006年的每个月的最后一个星期五上午10:15执行作   

(4)0 0 10,14,16 * * ? 每天上午10点,下午2点,4点   

(5)0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时   

(6)0 0 12 ? * WED 表示每个星期三中午12点   

(7)0 0 12 * * ? 每天中午12点触发   

(8)0 15 10 ? * * 每天上午10:15触发   

(9)0 15 10 * * ? 每天上午10:15触发   

(10)0 15 10 * * ? 每天上午10:15触发   

(11)0 15 10 * * ? 2005 2005年的每天上午10:15触发   

(12)0 * 14 * * ? 在每天下午2点到下午2:59期间的每1分钟触发   

(13)0 0/5 14 * * ? 在每天下午2点到下午2:55期间的每5分钟触发   

(14)0 0/5 14,18 * * ? 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发   

(15)0 0-5 14 * * ? 在每天下午2点到下午2:05期间的每1分钟触发   

(16)0 10,44 14 ? 3 WED 每年三月的星期三的下午2:10和2:44触发   

(17)0 15 10 ? * MON-FRI 周一至周五的上午10:15触发   

(18)0 15 10 15 * ? 每月15日上午10:15触发   

(19)0 15 10 L * ? 每月最后一日的上午10:15触发   

(20)0 15 10 ? * 6L 每月的最后一个星期五上午10:15触发   

(21)0 15 10 ? * 6L 2002-2005 2002年至2005年的每月的最后一个星期五上午10:15触发   

(22)0 15 10 ? * 6#3 每月的第三个星期五上午10:15触发

1、NodeJs依赖安装失败
日志报错(ERR_PNPM_REGISTRIES_MISMATCH  This modules directory was created using the following registries configuration: {"default":"https://registry.npmjs.org/"}. The current configuration is {"default":"https://registry.npmmirror.com/"}. To recreate the modules directory using the new settings, run "pnpm install".)
直接执行命令后,删除失败依赖重装。

pnpm install -g
pnpm install -g pnpm

docker exec -it qinglong bash

五、一键依赖

curl -fsSL https://git.metauniverse-cn.com/https://raw.githubusercontent.com/shufflewzc/QLDependency/main/Shell/QLOneKeyDependency.sh | sh

六、并发或运行某特顺序ck

有且只有前20个号并发运行,

conc JD_COOKIE 1-20

从第2个ck开始运行到第20个ck停止脚本(并发)。

desi JD_COOKIE 2-20

7、青龙面板常见问题

7.1.Error: Cannot find module ‘xx’(缺依赖)

操作是:
docker exec -it qinglong(名称) pnpm install xx(安装依赖)

7.2.Error: Cannot find module ‘./xx’(缺文件)

拉库命令不完整,请检查或复制完整的拉库命令。

7.3 忘记青龙面板账号密码

可以通过 SSH 执行下方命令查看账号及密码。

docker exec -it qinglong cat /ql/config/auth.json

交流

 
  • 新版青龙修改了端口映射以及文件夹映射,所以命令也跟着变了。
    拉取镜像/更新镜像
    docker pull whyour/qinglong:latest
    删除镜像
    docker rmi whyour/qinglong:latest
    服务器搭建命令
    docker run -dit \
    -v $PWD/ql:/ql/data \
    -p 5700:5600 \
    --name qinglong \
    --hostname qinglong \
    --restart always \
    whyour/qinglong:latest
    N1等路由器命令
    docker run -dit \
    -v /mnt/mmcblk2p4/ql:/ql/data \
    -p 5700:5600 \
    -e ENABLE_HANGUP=true \
    -e ENABLE_TG_BOT=true \
    -e ENABLE_WEB_PANEL=true \
    --name qinglong \
    --hostname qinglong \
    --restart always \
    whyour/qinglong:latest
    删除容器
    docker rm -f qinglong
     更新青龙
    docker exec -it qinglong ql update
  1. 初次登陆

初次访问 http://<自己ip>:5700 使用 admin/adminadmin 登陆,提示已初始化密码 去自己映射目录config下找 auth.json,查看里面的 password docker exec -it qinglong cat /ql/config/auth.json

  1. Cookie管理

登陆成功进入Cookie管理页面,右上角新增Cookie(最新版已加Cookie格式验证) 添加成功,可在Cookie列表更新Cookie,删除Cookie

  1. 基本命令

(容器内执行或者新建定时任务时忽略docker exec -it qinglong)

更新青龙 docker exec -it qinglong ql update

更新青龙并编译 docker exec -it qinglong ql restart

拉取自定义仓库 docker exec -it qinglong ql repo https://ghproxy.com/https://github.com/whyour/hundun.git “quanx” “tokens|caiyun|didi|donate|fold|Env”

拉取单个脚本 docker exec -it qinglong ql raw https://ghproxy.com/https://raw.githubusercontent.com/moposmall/Script/main/Me/jx_cfd.js

删除7天前的所有日志 docker exec -it qinglong ql rmlog 7

启动bot docker exec -it qinglong ql bot

导出互助码 docker exec -it qinglong ql code

通知测试 docker exec -it qinglong notify test test

立即执行脚本 docker exec -it qinglong task test.js now

并行执行脚本 docker exec -it qinglong task test.js conc

 

© 版权声明

相关文章

1 条评论

  • 一位WordPress评论者

    嗨,这是一条评论。
    要开始审核、编辑及删除评论,请访问仪表盘的“评论”页面。
    评论者头像来自Gravatar

    无记录
    回复