详细步骤

以下介绍使用Docker部署的方法

  1. 首先需要在阿里云上的【安全组】中开放相应的端口:

image.png

然后如果有宝塔面板也需要将相应端口开放:image.png

  1. 安装Docker

    1. sudo curl -sSL get.docker.com | sh
  2. 配置国内镜像源 Configure domestic mirror sources

    1. mkdir -p /etc/docker
    2. tee /etc/docker/daemon.json <<-'EOF'
    3. {
    4. "registry-mirrors": [
    5. "https://0b27f0a81a00f3560fbdc00ddd2f99e0.mirror.swr.myhuaweicloud.com",
    6. "https://ypzju6vq.mirror.aliyuncs.com",
    7. "https://registry.docker-cn.com",
    8. "http://hub-mirror.c.163.com",
    9. "https://docker.mirrors.ustc.edu.cn"
    10. ]
    11. }
    12. EOF
    13. systemctl daemon-reload
    14. systemctl restart docker
  3. 启动容器

    青龙面板的默认端口为5700,但是为了安全起见,前端接入端口可改为其它的不知名端口,例如此处的5600

  1. docker run -dit \
  2. -v $PWD/ql:/ql/data \
  3. -p 5600:5700 \
  4. --name qinglong \
  5. --hostname qinglong \
  6. --restart unless-stopped \
  7. whyour/qinglong:latest
  1. docker-compose 安装

    1. 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. 启动容器 ```shell

    进入/etc/docker目录

    cd /etc/docker

    在/etc/docker目录下创建名为qinglong的目录

    mkdir qinglong

    获取青龙的docker-compose.yml文件

    wget https://raw.githubusercontent.com/whyour/qinglong/master/docker/docker-compose.yml

启动

docker-compose up -d

停止

docker-compose down

  1. 7. Web界面进行初始化配置
  2. 在浏览器以输入http://IP:5600的方式进入:<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653534833674-7a9e8215-5cc9-4217-aa14-3674f4d52d09.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=681&id=dLRZW&margin=%5Bobject%20Object%5D&name=image.png&originHeight=1022&originWidth=1848&originalType=binary&ratio=1&rotation=0&showTitle=false&size=85092&status=done&style=none&taskId=uf5e29254-bc18-4d34-80ea-71d417011f0&title=&width=1232)<br />此处我选择的【通知方式】为“企业微信应用”,下面需要填写weWorkAppKey(这个配置完成后需要再次进入config.sh里面检查是否写入了配置,如果没有就再次配置一下):
  3. > 注:weWorkAppKey的第一个值是企业id,第二个值是secret,第三个值@all(或者成员id),第四个值是AgentID,第五个值是图片id 中间以逗号隔开。各个参数具体获取方法参考:[https://note.youdao.com/ynoteshare/index.html?id=351e08a72378206f9dd64d2281e9b83b&type=note&_time=1653318047344](https://note.youdao.com/ynoteshare/index.html?id=351e08a72378206f9dd64d2281e9b83b&type=note&_time=1653318047344)
  4. > 如果还想推送到普通微信,操作方式如下:
  5. > 进入【我的企业】->【微信插件】:
  6. > ![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653575466416-8741db03-06ae-4e78-9465-58bececfffa0.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=585&id=ue1f18324&margin=%5Bobject%20Object%5D&name=image.png&originHeight=878&originWidth=1823&originalType=binary&ratio=1&rotation=0&showTitle=false&size=118510&status=done&style=none&taskId=ue2b5580e-b65c-478f-b9ec-bb3ccb14a31&title=&width=1215.3333333333333)
  7. > 下拉后找到该二维码,使用普通微信扫码:
  8. > ![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653575532571-150e521e-0c84-401d-a21a-cb907cb6fa5a.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=143&id=u0cf6172a&margin=%5Bobject%20Object%5D&name=image.png&originHeight=215&originWidth=1268&originalType=binary&ratio=1&rotation=0&showTitle=false&size=31984&status=done&style=none&taskId=ubab4581e-8cc4-4e77-a003-73a860a2c4b&title=&width=845.3333333333334)![IMG_6400.PNG](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653576904715-e3dde19d-bc87-479e-b928-ee454095c0a8.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=drop&height=834&id=uc439e67d&margin=%5Bobject%20Object%5D&name=IMG_6400.PNG&originHeight=2532&originWidth=1170&originalType=binary&ratio=1&rotation=0&showTitle=false&size=223035&status=done&style=none&taskId=ua93fab90-329f-4a68-8447-36e2b3b1069&title=&width=385.3333435058594)
  9. >
  10. > 如果之前有关注过但是没有收到消息那就需要确认一下是否勾选了【接收企业消息】:
  11. > ![IMG_6395.PNG](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653576152821-7c604fcc-be4c-4584-b61f-20f1199c0a66.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=drop&height=91&id=u56bdf9c1&margin=%5Bobject%20Object%5D&name=IMG_6395.PNG&originHeight=264&originWidth=1102&originalType=binary&ratio=1&rotation=0&showTitle=false&size=22391&status=done&style=none&taskId=u7b1b42f9-f5ea-4583-a1e8-60077e3a993&title=&width=380.3333435058594)
  12. > ![IMG_6399.PNG](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653576177564-de16bb20-d057-4aec-9faa-f921fa02ef93.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=drop&height=827&id=u54071d36&margin=%5Bobject%20Object%5D&name=IMG_6399.PNG&originHeight=2532&originWidth=1170&originalType=binary&ratio=1&rotation=0&showTitle=false&size=152720&status=done&style=none&taskId=u9ceb3ecf-7798-4f78-b5aa-63bc24af416&title=&width=382.3333740234375)
  13. > ![IMG_6398.PNG](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653576162465-b79b6f8a-b13f-4368-9380-ace6ce2d5321.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=drop&height=838&id=u46cd5f58&margin=%5Bobject%20Object%5D&name=IMG_6398.PNG&originHeight=2532&originWidth=1170&originalType=binary&ratio=1&rotation=0&showTitle=false&size=164524&status=done&style=none&taskId=u7a8bfff0-37a1-415d-9a2a-1819180720b&title=&width=387.3333435058594)
  14. ![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653534891889-09025375-c0f6-4b23-8fda-ef24172e7242.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=681&id=GMnxT&margin=%5Bobject%20Object%5D&name=image.png&originHeight=1022&originWidth=1848&originalType=binary&ratio=1&rotation=0&showTitle=false&size=105785&status=done&style=none&taskId=u08abed05-b4d0-42f0-8816-04a4d93638c&title=&width=1232)<br />下一步配置账户名称和密码,然后完成安装:<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653534925328-c78e6be2-d6ab-497f-8b3a-91da8497175a.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=681&id=s1OOw&margin=%5Bobject%20Object%5D&name=image.png&originHeight=1022&originWidth=1848&originalType=binary&ratio=1&rotation=0&showTitle=false&size=86571&status=done&style=none&taskId=u87e395ee-aac0-4c74-a805-d00f66dd1e8&title=&width=1232)<br />之后会自动跳转到青龙控制面板登录界面,输入前面配置的用户名密码登录即可:<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653534937932-bba5471f-483b-4065-9c9c-6473b07bafc7.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=681&id=v3yNM&margin=%5Bobject%20Object%5D&name=image.png&originHeight=1022&originWidth=1848&originalType=binary&ratio=1&rotation=0&showTitle=false&size=69374&status=done&style=none&taskId=u42f90a6c-3d47-4dcb-a1af-dba98bf6695&title=&width=1232)
  15. > 注:青龙面板的密码保存位置为/root/ql/config/auth.json![image.png](https://cdn.nlark.com/yuque/0/2022/png/1240869/1653575101063-a47150b8-c0dd-403c-8e94-dfbae8da9c64.png#clientId=u36fa3c03-597f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=95&id=u49d74c8a&margin=%5Bobject%20Object%5D&name=image.png&originHeight=142&originWidth=1657&originalType=binary&ratio=1&rotation=0&showTitle=false&size=42510&status=done&style=none&taskId=u4df2edb3-2fa3-49e0-9c8c-eaa244e5932&title=&width=1104.6666666666667)
  16. 8. Github加速
  17. 方法一:直接配置GithubProxyUrl
  18. ```shell
  19. # 修改配置文件config.sh里的GithubProxyUrl
  20. GithubProxyUrl="https://git.metauniverse-cn.com/"

image.png
配置完成后记得点击右上角的【保存】

方法二:获取Github相关域名的可用IP

  1. # 通过超级ping分别对以下链接进行解析,找到稳定、快速、可用的 IP 地址
  2. github.com
  3. github.global.ssl.fastly.net
  4. nodeload.github.com
  5. api.github.com
  6. codeload.github.com
  7. # 修改hosts文件
  8. vim /etc/hosts
  9. # 例如找到可用IP后按照如下格式添加
  10. 15.164.81.167 github.com
  11. 151.101.1.194 github.global.ssl.fastly.net
  12. 13.124.75.135 nodeload.github.com
  13. 13.209.163.61 api.github.com
  14. 13.124.243.66 codeload.github.com
  15. # 重启网络
  16. systemctl restart network
  1. 部署依赖库

方法一:直接在容器中添加依赖库:

  1. # 查看容器ID
  2. docker ps
  3. # 进入青龙容器
  4. docker exec -it 容器ID bash
  5. # 部署依赖库(缙哥哥加速版)
  6. curl -fsSL https://api.dujin.org/js/qinglong/qinglong-yilaiku-dujin.org.sh | sh
  7. # 海外服务器
  8. # curl -fsSL https://raw.githubusercontent.com/FlechazoPh/QLDependency/main/Shell/QLOneKeyDependency.sh | sh

image.png
方法二:在面板安装依赖库,添加后会自动执行安装,点击日志或者刷新页面可以查看是否安装成功,若安装失败可以点击重新安装:
image.png

  1. # NodeJs 依赖库
  2. crypto-js
  3. prettytable
  4. dotenv
  5. jsdom
  6. date-fns
  7. tough-cookie
  8. tslib
  9. ws@7.4.3
  10. ts-md5
  11. jsdom -g
  12. jieba
  13. fs
  14. form-data
  15. json5
  16. global-agent
  17. png-js
  18. @types/node
  19. require
  20. typescript
  21. js-base64
  22. axios
  23. # Python3 依赖库
  24. requests
  25. canvas
  26. ping3
  27. jieba
  28. aiohttp
  29. # Linux 依赖库
  30. bizCode
  31. bizMsg
  32. lxml
  1. 新建任务和定时执行

image.png
定时任务库:

  1. # KingRan/KR(集合库)
  2. ql repo https://github.com/KingRan/KR.git "jd_|jx_|jdCookie" "activity|backUp" "^jd[^_]|USER|utils|function|sign|sendNotify|ql|JDJR"
  3. # Curtinlv 仓库
  4. ql repo https://github.com/curtinlv/JD-Script.git
  5. # Zy143L/wskey(wskey转换库)
  6. ql repo https://github.com/Zy143L/wskey.git "wskey"
  7. # smiek2121(开卡库)
  8. ql repo ql repo https://github.com/smiek2121/scripts.git "jd_|gua_" "" "ZooFaker_Necklace.js|JDJRValidator_Pure.js|sign_graphics_validate.js|cleancart_activity.js|jdCookie.js|sendNotify.js"
  9. # Yun-City/City(集合库)
  10. ql repo https://github.com/Yun-City/City.git "jd_|jx_|gua_|jddj_|getJDCookie" "activity|backUp" "^jd[^_]|USER|function|utils|sendnotify|ZooFaker_Necklace|jd_Cookie|JDJRValidator_|sign_graphics_validate|ql|magic|cleancart_activity"
  11. # 6dylan6/jdpro(集合库)
  12. ql repo https://github.com/6dylan6/jdpro.git "jd_|jx_|jddj_" "backUp" "^jd[^_]|USER|JD|function|sendNotify"
  13. # gys619/Absinthe(集合库)
  14. ql repo https://github.com/gys619/Absinthe.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"
  15. # zero205/JD_tencent_scf
  16. 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"

定时规则为:秒 分 时 天 月 周
假设该任务需要每天13:01:30执行一次。那么则应该这么设置:30 01 13 * * *
image.png

拉完库之后可以立即运行,否则会等到设置好的时间才会自动执行(注意需要先配置下述的JD_COOKIE变量)

  1. 获取Cookie

进入https://m.jd.com/,然后登录,再按F12进入控制台,在【网络】中找到“LoginRedirect……”,在其【标头】部分复制pt_keypt_pin
image.png
新建变量JD_COOKIE(可以一次性添加多条,只要勾选【自动拆分】即可):
image.png

  1. 配置企业微信应用

如果没有执行第7步或者第7步的操作未生效,则需要在此处进行重新配置,参数获取方式同上,配置完成后记得点击右上角的【保存】:
image.png

  1. 开始执行任务

可以先手动执行一个测试效果:
image.png
这个脚本执行后会自动释放大量脚本:
image.png
现在假设执行这个名为“5.20~5.31 大牌优惠趴 五月爱相伴”的脚本:
image.png
可以看到已经执行成功了:
image.png
如果要验证推送功能,可以直接执行这两个脚本:
image.png
然后看前面配置的企业微信应用是否有推送相应的内容:
image.png

  1. 开启京东游戏任务

建议把所有活动游戏都点击一次,京东工厂这种需要自己选产品的建议自己选,不然会自动选一个,有的干脆不选。各个游戏入口位置:

  • 京东APP

    • 摇钱树:京东APP→右下角我的→中间更多工具
    • 东东萌宠:京东APP→右下角我的
    • 宠汪汪:京东APP→右下角我的
    • 东东农场:京东APP→右下角我的
  • 京喜APP

    首次下载登陆京喜APP可以0.01元包邮买东西

    • 京喜工厂:京喜APP→右下角我的
    • 京喜牧场:京喜APP→右下角我的
    • 京喜财富岛:京喜APP→右下角我的
  • 京东极速版

    首次下载登陆京东极速版可以领5-10元券包邮买东西

    • 福袋大赢家:京东极速版→右下角我的
    • 汪汪乐园:京东极速版→右下角我的

附:青龙面板后台相关操作

  1. # 日志存放位置
  2. ql/log/task_error.log
  3. # 更新并重启青龙
  4. ql update
  5. # 运行自定义脚本extra.sh
  6. ql extra
  7. # 添加单个脚本文件
  8. ql raw <file_url>
  9. # 添加单个仓库的指定脚本
  10. ql repo <repo_url> <whitelist> <blacklist> <dependence> <branch> <extensions>
  11. # 删除旧日志
  12. ql rmlog <days>
  13. # 启动tg-bot
  14. ql bot
  15. # 检测青龙环境并修复
  16. ql check
  17. # 重置登录错误次数
  18. ql resetlet
  19. # 禁用两步登录
  20. ql resettfa
  21. # 依次执行,如果设置了随机延迟,将随机延迟一定秒数
  22. task <file_path>
  23. # 依次执行,无论是否设置了随机延迟,均立即运行,前台会输出日,同时记录在日志文件中
  24. task <file_path> now
  25. # 并发执行,无论是否设置了随机延迟,均立即运行,前台不产生日,直接记录在日志文件中,且可指定账号执行
  26. task <file_path> conc <env_name> <account_number>(可选的)
  27. # 指定账号执行,无论是否设置了随机延迟,均立即运行
  28. task <file_path> desi <env_name> <account_number>

访问青龙面板白屏

问题现象:
在访问青龙面板的时候白屏:
image.png

问题原因:
无法访问6个 js 文件了:
image.png
解决方法:
方法一:修改hosts
方法二:使用缙哥哥加速版
进入青龙面板容器:docker exec -it 容器ID bash
备份index.html文件:cp /ql/dist/index.html /ql/dist/index.html.bak
修改index.html:vi /ql/dist/index.html
原始内容:
image.png
需要修改为:

  1. <script src="https://api.dujin.org/js/qinglong/darkreader.min.js"></script>
  2. <script src="https://api.dujin.org/js/qinglong/codemirror.min.js"></script>
  3. <script src="https://api.dujin.org/js/qinglong/shell.js"></script>
  4. <script src="https://api.dujin.org/js/qinglong/python.js"></script>
  5. <script src="https://api.dujin.org/js/qinglong/javascript.js"></script>
  6. <script src="https://api.dujin.org/js/qinglong/sockjs.min.js"></script>

修改后:
image.png

之后再次访问青龙面板即可

其它知识点

修改容器端口号
例如将接入端口号从5600改为5700

首先查看当前的端口映射关系,然后记录容器ID:
image.png

停止docker容器:docker stop 容器ID

停止docker:systemctl start docker

进入docker容器目录:cd /var/lib/docker/containers/容器ID
image.png

编辑相关文件:
vim hostconfig.json
image.png

将上述位置的端口改为容器实际监听的端口

vim config.v2.json
image.png

将上述位置的端口改为容器实际监听的端口

重新启动docker:systemctl start docker

重新启动docker容器:docker stop 容器ID

进入容器:docker exec -it 容器ID bash

参考

  1. KingRan/KR - Github
  2. whyour/qinglong - Github
  3. 傻妞sillyGirl部署教程 - 科技玩家
  4. 青龙面板登录页白屏无法访问的两种解决办法 - 缙哥哥博客
  5. 青龙面板自动领京东京豆,做农场浇水、萌宠、种豆、签到等任务 - 缙哥哥博客