找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 132750|回复: 800

[N1盒子] N1在openwrt中docker安装青龙面板教程以及多开青龙容器,并解决拉库网络错误...

 火... [复制链接]
本帖最后由 岁月的牵绊 于 2022-3-28 18:00 编辑

docker安装青龙面板教程以及多开青龙容器
【多开同一个镜像容器,只能使用bridge模式,具体请看『 docker的四种网络模式 』】
我使用的是flippy编译的openwrt版本65+o。F大的openwrt固件传送门『 https://www.right.com.cn/forum/thread-4076037-1-1.html
温馨提醒:
0、此教程建议看完再进行操作,切勿盲目跟随操作,很多时候自己做出的选择才是最合适的(授人以鱼不如授人以渔)
1、有想使用ninja登陆功能的网友,请不要使用本帖给出的所有青龙容器代码!!!本帖容器代码会拉取作者最新版容器镜像。
对ninja暂时有一定的兼容问题,本帖仅供安装参考,看完教程麻烦请移步到下面给出的帖子,使用可兼容ninja的容器代码。
2、青龙面板docker镜像库:原作者库:『 whyour/qinglong 』------------ 旧版镜像备份库:『 hushunxu/qinglong_base (非原作者备份,介意者请谨慎使用)
3、需要安装旧版本青龙的请到上面给出的两个镜像库获取对应版本的镜像命令(一般格式都是docker pull xxxxx/xxxx:xx),然后将你获取到的镜像命令去除docker pull 即(xxxxx/xxxx:xx),把本帖给出的容器代码最后一行替换成它即可。
例如:
安装旧版备份库的青龙v2.10.7版,将本帖的whyour/qinglong:latest  替换成  hushunxu/qinglong_base:2.10.7 即可,其他代码保持默认不变!!!
安装原作者的青龙develop版(具体是啥版本我也不清楚),将本帖的whyour/qinglong:latest  替换成  whyour/qinglong:develop 即可,其他代码保持默认不变!!!

教程正式开始:
本帖将介绍两种docker网络模式部署容器方法
一、利用docker的bridge模式部署容器
ssh连接openwrt,执行以下命令
(1)查看docker当前状态,如果正在运行中请直接进入下一步。
#使用init.d来控制docker服务
##查看docker运行状态
  1. /etc/init.d/dockerd status
复制代码
##启动docker
  1. /etc/init.d/dockerd start
复制代码
##重启docker
  1. /etc/init.d/dockerd restart
复制代码
##关闭docker
  1. /etc/init.d/dockerd stop
复制代码
#如果你的docker无法正常启动,请检查你的openwrt系统是否运行在u盘上,U盘中默认无法启动docker需要挂载分区给docker后才能运行具体方法请走此传送门进入处理
U盘使用flippy版openwrt开启docker的方法 https://www.right.com.cn/forum/thread-3356941-1-1.html



(2)安装路径的选择
首先青龙容器最占空间的是拉取的脚本文件以及运行日志,拉的脚本越多产生的日志文件占用空间越大,所以一定要定时删除日志,尽可能让容器少占用空间。
1、首先查看/root目录挂载的分区及可用容量
  1. du -sh /root
复制代码
2、查看docker挂载的分区及路径
  1. df -h
复制代码



3、现在你就可以按需选择你要安装的路径
如果你的/root目录挂载的空间还足够大,可以直接cd /root进行安装容器


也可以进入到docker目录中进行安装或者选择一个大容量的分区路径进行安装(请替换为你自己的docker挂载de分区路径)
  1. cd /mnt/mmcblk2p4
复制代码


以下教程以/root为安装路径

(3)进入root目录下,容器文件将安装在当前执行命令的目录下,自行选择安装路径。
  1. cd /root
复制代码


#复制下列整段命令,部署青龙面板
# 注PWD请修改为实际你想安装的路径,容器名称为qinglong,容器文件名为ql,容器默认文件路径为/root/ql
#无需提前拉镜像,执行容器代码会自动拉取最新镜像。
#以下代码已预留了ninjia、xdd、xdd-plus、sillyGirl、等映射文件夹。如有不需要的可删除对应的代码,自行选择去与留。


青龙v2.11.3及以下版本安装命令
          青龙v2.12.0及以上版本安装命令

  1. docker run -dit \
  2. -v $PWD/ql/config:/ql/config \
  3. -v $PWD/ql/scripts:/ql/scripts \
  4. -v $PWD/ql/repo:/ql/repo \
  5. -v $PWD/ql/log:/ql/log \
  6. -v $PWD/ql/db:/ql/db \
  7. -v $PWD/ql/deps:/ql/deps \
  8. -v $PWD/ql/jbot:/ql/jbot \
  9. -v $PWD/ql/raw:/ql/raw \
  10. -v $PWD/ql/ninja:/ql/ninja \
  11. -v $PWD/ql/xdd:/ql/xdd \
  12. -v $PWD/ql/xdd-plus:/ql/xdd-plus \
  13. -v $PWD/ql/sillyGirl:/ql/sillyGirl \
  14. -p 5700:5700 \
  15. -p 5701:5701 \
  16. -e ENABLE_HANGUP=true \
  17. -e ENABLE_WEB_PANEL=true \
  18. -e ENABLE_TG_BOT=true \
  19. --name qinglong \
  20. --hostname qinglong \
  21. --restart unless-stopped \
  22. whyour/qinglong:2.11.3
复制代码

  1. docker run -dit \
  2. -v $PWD/ql:/ql/data \
  3. -v $PWD/ql/ninja:/ql/data/ninja \
  4. -v $PWD/ql/xdd:/ql/data/xdd \
  5. -v $PWD/ql/xdd-plus:/ql/data/xdd-plus \
  6. -v $PWD/ql/sillyGirl:/ql/data/sillyGirl \
  7. -p 5700:5700 \
  8. -p 5701:5701 \
  9. -e ENABLE_HANGUP=true \
  10. -e ENABLE_WEB_PANEL=true \
  11. -e ENABLE_TG_BOT=true \
  12. --name qinglong \
  13. --hostname qinglong \
  14. --restart unless-stopped \
  15. whyour/qinglong:latest
复制代码



(4)查看qinglong容器的实时日志
  1. docker logs -f qinglong
复制代码
#直到出现如下图,表示部署完成 ,按Ctrl+C键结束查看日志

(5)进入容器内部,进行网络检测
  1. docker exec -it qinglong bash  
复制代码

#在容器内,ping百度网址是否畅通
  1. ping baidu.com -c 4
复制代码
#若能及时返回4条数据包,则表示容器网络畅通,跳过设置直接进行下一步


#若返回错误ping不通,请登录openwrt后台进行如下设置:(打开防火墙转发)
  
  • 1、Luci>网络>防火墙>基本数据>转发:接受 >保存&应用

  • 2、Luci>网络>防火墙>自定义规则:重启防火墙
  • 3、 回到ssh,先执行
    1. exit
    复制代码
    退出容器,再执行
    1. /etc/init.d/dockerd restart
    复制代码
    重启docker
(6)进入青龙面板后台,进行青龙面板账户密码设置。浏览器输入n1的ip:5700
例如:192.168.1.1:5700

(7)青龙面板入门必备技能设置
#技能1:
添加定时删除日志任务(青龙面板自的日志删除似乎不太管用,建议直接设置定时任务。系统设置--其他设置--日志删除频率)
ql rmlog 2


#技能2
安装依赖,当运行脚本出现缺依赖报错时



至此,第一个青龙面板安装完成。
以上就是安装青龙容器的完整教程!

追加说明:
1、青龙v2.10.7版及以上版本新增加/ql/deps目录

2、青龙v2.12.0版及以上版本调整数据目录并迁移到/ql/data目录中
3、如果浏览器无法访问青龙,请尝试以下方法【后续等作者修复更新】

目前青龙v2.10.9版无法访问面板临时解决办法:
进入容器内依次执行以下命令:
mkdir -p /run/nginx
nginx -c /etc/nginx/nginx.conf


请需要部署ninja功能的请移步如下帖子(本帖仅供详细安装教程使用)


n1、玩客云等docker安装青龙面板+ninja登陆ck教程 https://www.right.com.cn/forum/thread-6661780-1-1.html

###第二个青龙面板的安装###
ssh重新连接openwrt
进入到/root目录下
  1. cd /root
复制代码
输入以下命令

青龙v2.11.3及以下版本安装命令
  青龙v2.12.0及以上版本安装命令

  1. docker run -dit \
  2. -v $PWD/ql1/config:/ql/config \
  3. -v $PWD/ql1/scripts:/ql/scripts \
  4. -v $PWD/ql1/repo:/ql/repo \
  5. -v $PWD/ql1/log:/ql/log \
  6. -v $PWD/ql1/db:/ql/db \
  7. -v $PWD/ql1/deps:/ql/deps \
  8. -v $PWD/ql1/jbot:/ql/jbot \
  9. -v $PWD/ql1/raw:/ql/raw \
  10. -v $PWD/ql1/ninja:/ql/ninja \
  11. -v $PWD/ql1/xdd:/ql/xdd \
  12. -v $PWD/ql1/xdd-plus:/ql/xdd-plus \
  13. -v $PWD/ql1/sillyGirl:/ql/sillyGirl \
  14. -p 5800:5700 \
  15. -p 5801:5701 \
  16. -e ENABLE_HANGUP=true \
  17. -e ENABLE_WEB_PANEL=true \
  18. -e ENABLE_TG_BOT=true \
  19. --name qinglong1 \
  20. --hostname qinglong1 \
  21. --restart unless-stopped \
  22. whyour/qinglong:2.11.3
复制代码


  1. docker run -dit \
  2. -v $PWD/ql1:/ql/data \
  3. -v $PWD/ql1/ninja:/ql/data/ninja \
  4. -v $PWD/ql1/xdd:/ql/data/xdd \
  5. -v $PWD/ql1/xdd-plus:/ql/data/xdd-plus \
  6. -v $PWD/ql1/sillyGirl:/ql/data/sillyGirl \
  7. -p 5800:5700 \
  8. -p 5801:5701 \
  9. -e ENABLE_HANGUP=true \
  10. -e ENABLE_WEB_PANEL=true \
  11. -e ENABLE_TG_BOT=true \
  12. --name qinglong1 \
  13. --hostname qinglong1 \
  14. --restart unless-stopped \
  15. whyour/qinglong:latest
复制代码



#查看qinglong1的容器日志,等待部署完成。
  1. docker logs -f qinglong1
复制代码
#进入青龙面板的后台,进行账号密码设置
浏览器输入n1的ip:5800
例如:192.168.1.1:5800
ninja界面:192.168.1.1:5801
第二个青龙面板部署完成

###第三个青龙面板部署###
同第二个青龙部署步骤一样,只需要把部署代码改成如下
确保在/root目录下执行,如果后面要删除容器文件请君务必记住具体安装位置


青龙v2.11.3及以下版本安装命令
青龙v2.12.0及以上版本安装命令
  1. docker run -dit \
  2. -v $PWD/ql2/config:/ql/config \
  3. -v $PWD/ql2/scripts:/ql/scripts \
  4. -v $PWD/ql2/repo:/ql/repo \
  5. -v $PWD/ql2/log:/ql/log \
  6. -v $PWD/ql2/db:/ql/db \
  7. -v $PWD/ql2/deps:/ql/deps \
  8. -v $PWD/ql2/jbot:/ql/jbot \
  9. -v $PWD/ql2/raw:/ql/raw \
  10. -v $PWD/ql2/ninja:/ql/ninja \
  11. -v $PWD/ql2/xdd:/ql/xdd \
  12. -v $PWD/ql2/xdd-plus:/ql/xdd-plus \
  13. -v $PWD/ql2/sillyGirl:/ql/sillyGirl \
  14. -p 5903:5700 \
  15. -p 5904:5701 \
  16. -e ENABLE_HANGUP=true \
  17. -e ENABLE_WEB_PANEL=true \
  18. -e ENABLE_TG_BOT=true \
  19. --name qinglong2 \
  20. --hostname qinglong2 \
  21. --restart unless-stopped \
  22. whyour/qinglong:2.11.3
复制代码

  1. docker run -dit \
  2. -v $PWD/ql2:/ql/data \
  3. -v $PWD/ql2/ninja:/ql/data/ninja \
  4. -v $PWD/ql2/xdd:/ql/data/xdd \
  5. -v $PWD/ql2/xdd-plus:/ql/data/xdd-plus \
  6. -v $PWD/ql2/sillyGirl:/ql/data/sillyGirl \
  7. -p 5903:5700 \
  8. -p 5904:5701 \
  9. -e ENABLE_HANGUP=true \
  10. -e ENABLE_WEB_PANEL=true \
  11. -e ENABLE_TG_BOT=true \
  12. --name qinglong2 \
  13. --hostname qinglong2 \
  14. --restart unless-stopped \
  15. whyour/qinglong:latest
复制代码




#进入青龙面板的后台,进行账号密码设置
浏览器输入n1的ip:5903
例如:192.168.1.1:5903
ninja面板:192.168.1.1:5904
第三个青龙面板部署完成
第四个第五个容器…的部署代码、后台地址依次类推
以上就是docker同时部署多个青龙面板的教程,是利用docker的桥接模式,可以自定义端口,实现多开青龙面板。
注意:
使用以上部署青龙命令请务必打开防火墙转发功能,否则容器无法连网。

分割线-----------------------------------------------------------------------------------------------------分割线

二、利用docker的host模式部署容器
下面介绍另一种docker部署青龙面板的代码,利用docker的host模式,可以不用打开防火墙转发功能,但是不能自定义端口(默认端口5700和5701),无法实现多开同一镜像容器。
同样用ssh连接openwrt,执行命令
#进入到root文件夹下,首次ssh登陆默认在/root下
  1. cd /root
复制代码
# 下列命令整段复制,部署青龙面板
# 注PWD请修改为实际你想安装的路径,容器名称为qinglong,容器文件名为ql,容器默认文件路径为/root/ql
#以下代码已预留了ninjia、xdd、xdd-plus、sillyGirl、等映射文件夹。如有不需要的可删除对应的代码,自行选择去与留
青龙v2.11.3及以下版本安装命令
青龙v2.12.0及以上版本安装命令
  1. docker run -dit \
  2. -v $PWD/ql/config:/ql/config \
  3. -v $PWD/ql/scripts:/ql/scripts \
  4. -v $PWD/ql/repo:/ql/repo \
  5. -v $PWD/ql/log:/ql/log \
  6. -v $PWD/ql/db:/ql/db \
  7. -v $PWD/ql/deps:/ql/deps \
  8. -v $PWD/ql/jbot:/ql/jbot \
  9. -v $PWD/ql/raw:/ql/raw \
  10. -v $PWD/ql/ninja:/ql/ninja \
  11. -v $PWD/ql/xdd:/ql/xdd \
  12. -v $PWD/ql/xdd-plus:/ql/xdd-plus \
  13. -v $PWD/ql/sillyGirl:/ql/sillyGirl \
  14. --net host \
  15. -e ENABLE_HANGUP=true \
  16. -e ENABLE_WEB_PANEL=true \
  17. -e ENABLE_TG_BOT=true \
  18. --name qinglong \
  19. --hostname qinglong \
  20. --restart unless-stopped \
  21. whyour/qinglong:2.11.3
复制代码



  1. docker run -dit \
  2. -v $PWD/ql:/ql/data \
  3. -v $PWD/ql/ninja:/ql/data/ninja \
  4. -v $PWD/ql/xdd:/ql/data/xdd \
  5. -v $PWD/ql/xdd-plus:/ql/data/xdd-plus \
  6. -v $PWD/ql/sillyGirl:/ql/data/sillyGirl \
  7. --net host \
  8. -e ENABLE_HANGUP=true \
  9. -e ENABLE_WEB_PANEL=true \
  10. -e ENABLE_TG_BOT=true \
  11. --name qinglong \
  12. --hostname qinglong \
  13. --restart unless-stopped \
  14. whyour/qinglong:latest
复制代码




#查看容器日志,等待部署完成。
  1. docker logs -f qinglong
复制代码
#进入青龙面板的后台,进行账号密码设置

浏览器输入n1的ip:5700
例如:192.168.1.1:5700
ninja面板:192.168.1.1:5701
青龙面板host模式部署完成。


更多有关青龙面板使用的教程 https://www.notion.so/1c598629675145988b43a37998a1604a
----------------------------------------------------------------------
关于拉库出现请检查网络的报错:
1、远程仓库链接接是否被qiang。请换国内库或走代理。
2、远程仓库文件是否被删除或拉库代码是否已修改。
3、openwrt是否开启了酸酸乳。请尝试关闭再拉库。
4、如果确定你的网络配置都没问题,还是拉取仓库失败,进入ssh执行以下命令后重新拉库(qinglong改为你的容器name名称)
  1. docker exec -it qinglong rm -rfv /ql/repo/*/index.lock
复制代码


------------------------------------------------------------
现附上完全删除docker容器和镜像的方法【不是删除docker】
首先查看所有容器包括停止的
  1. docker pa -a
复制代码
找到需要删除容器的[name],以qinglong为例,其它的容器类似
停止容器
  1. docker stop qinglong
复制代码
删除qinglong容器
  1. docker rm qinglong
复制代码
删除qinglong容器的文件
来到你拉取容器的路径下,此教程是/root
  1. cd /root
复制代码
列出/root下所有的文件
  1. ls
复制代码
删除所有青龙容器的文件夹,例如:ql、ql1、ql2
  1. rm -rf ql
复制代码
查看所有的容器镜像,多个青龙容器都是共用同一个镜像的,所以镜像只有一个。
  1. docker images
复制代码
复制whyour/qinglong镜像的IMAGE ID
删除qinglong镜像,下面的IMAGE ID替换成上面复制的ID
  1. docker rmi IMAGE ID
复制代码
恭喜你青龙容器已被完全删除,你已成功下车!












本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 17恩山币 +18 收起 理由
and*** + 1 你好,久仰卧龙大名,在下凤雏!.
zhan*** + 1 你好,久仰卧龙大名,在下凤雏!.
Bors*** + 1 这才几个菜啊,喝成这样~~~
ping*** + 1 你好,久仰卧龙大名,在下凤雏!
lake*** + 1 来来来,有什么伤心的事说出来让大家开心一.
met*** + 1 来来来,有什么伤心的事说出来让大家开心一.
xia*** + 1 强大的恩山!(以下重复1万次)
es8*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
qi*** + 1 几个菜啊,喝成这样~~~
Sac*** + 1 很详细,不过网络不通的解决方案对我无效,我是按这个解决的:https://www
qgoo*** + 1 风清云淡、飘逸悠然……极爽!
xiao*** + 1 面对这种帖子,我内心复杂,真不知道说什么好……
penc*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
the*** + 1 能不能装nolanjdc,不知道怎么拉取操作
ko*** + 1 第二个面板网络要怎么设置,能不能出个教程
碰运*** + 1 难得好东西
me*** + 2 好东西!

查看全部评分

 楼主| | 显示全部楼层
本帖最后由 岁月的牵绊 于 2021-11-25 08:45 编辑

追加说明:
如果拉的最新版青龙无法正常使用,建议使用旧版本。
现在最新版的青龙面板(v2.10.9)端口已改成5600
2.10.9无法访问面板临时解决办法:
进入容器内依次执行命令
mkdir -p /run/nginx
nginx -c /etc/nginx/nginx.conf


详情请看:https://comments.app/view/gdJHL3oV
回复

使用道具 举报

 楼主| | 显示全部楼层
kennyfeng 发表于 2021-11-6 20:02
打开防火墙转发功能,容器还是无法ping成功,怎么回事?

执行命令
docker network inspect bridge检查docker容器ip是否配置正确,是否分配了ip地址
请尝试以下设置:
nano /etc/sysctl.conf,添加下列内容:
net bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1
net.ipv4.ip_forward=1

CTRL+O保存,CTRL+X退出
在执行service docker restart
再尝试容器网络检测

如果还不行请切换host模式安装容器
无果,请君另请高人。
回复

使用道具 举报

一个面板多个号不好么
回复

使用道具 举报

低调,抵调。想大家都没有得撸吗?
回复

使用道具 举报

大佬,我今天折腾了一天了,抓取脚本失败,然后我又反复删除了那些容器和镜像,现在根据你的步骤来,到第二个步骤步骤青龙面板的时候,为什么显示失败呢,第一个拉取镜像已经成功了。
回复

使用道具 举报

现在问题是网络测试通过了,但是查看qinglong容器的日志 看不到,显示找不到,然后进入容器内部也是找不到。
回复

使用道具 举报

 楼主| 来自手机 | 显示全部楼层
andywjy 发表于 2021-11-3 00:24
现在问题是网络测试通过了,但是查看qinglong容器的日志 看不到,显示找不到,然后进入容器内部也是找不到 ...

docker ps
查看qinglong容器是否正在运行
不在的话再执行
docker ps -a
查看所有容器,判断qinglong容器是否成功安装
再没有的话,docker可能已经被你玩坏了,请重装openwrt系统,在按步骤操作就可以了。
回复

使用道具 举报

岁月的牵绊 发表于 2021-11-3 00:47
docker ps
查看qinglong容器是否正在运行
不在的话再执行

在运行啊老哥。有没有脚本库提供一个能用的我试试,我找了好多脚本库都是更新失败
回复

使用道具 举报

思考。小白的我还没看明白。也是F大固件,里面有docker ce。
回复

使用道具 举报

感谢大佬解决了网络问题
回复

使用道具 举报

大家千万不要听他的容器路径默认成PWD,后面/目录爆满打不开.
回复

使用道具 举报

打开防火墙转发功能,容器还是无法ping成功,怎么回事?
回复

使用道具 举报

打开防火墙转发功能,容器还是无法ping成功,怎么回事?
回复

使用道具 举报

 楼主| | 显示全部楼层
beibei2 发表于 2021-11-6 19:59
大家千万不要听他的容器路径默认成PWD,后面/目录爆满打不开.

不懂的人自然不懂,自己先去查一下$PWD的意思好吧,不懂不要瞎说。
回复

使用道具 举报

岁月的牵绊 发表于 2021-11-6 20:15
不懂的人自然不懂,自己先去查一下$PWD的意思好吧,不懂不要瞎说。

pwd当前路径,   你用这个就安装到/目录了, f大的意思是应该放到mmk2p4 这个挂载的docker目录你都cd /root了,你就是装到根目录了



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-13 18:25

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表