解决LEDE无法下载Docker环境的问题之uhttpd
之前尝试在VPS上搭建假的download.docker.com网站,来解决koolshare版lede在部署docker环境时,遇到的 错误代码:-6
的问题
而OpenWRT自带一个uhttpd工具可以作为http服务端,所以可以利用这个工具在路由器上搭建一个假的download.docker.com网站来解决无法部署的问题。以便那些手里没有服务器或者VPS的朋友。
1.下载docker环境
注:这里我测试了半天,插件好像不会自动分析最新的docker版本,它会指定 18.09.1
docker版本进行下载部署,而不是最新版。当我写这篇文章时,docker最新版为18.09.6
开搞~
电脑端打开 https://download.docker.com/linux/static/stable/x86_64/docker-18.09.1.tgz
放置到LEDE下任意目录,比如/mnt/msata/bugxia/linux/static/stable/x86_64/docker-18.09.1.tgz
可以在SSH下快速建立该路径
mkdir -p /mnt/msata/bugxia/linux/static/stable/x86_64/
2.修改LEDE host文件
打开LEDE管理页面,左侧 系统 — 进阶设置,在配置hosts里添加两行
0.0.0.0 download.docker.com
::1 download.docker.com
让路由器能将 download.docker.com 解析到路由器自身上,保存host使之生效
3.建立假的docker网站
首先修改/etc/config/uhttpd,将默认的LEDE管理页面https端口改为444或其他,目的是将443端口空出来
保存,重启uhttpd服务
/etc/init.d/uhttpd restart
然后以命令行方式单独启动uhttpd,回车使其前台运行
/usr/sbin/uhttpd -f -h /mnt/msata/bugxia -s 443 -C /etc/uhttpd.crt -K /etc/uhttpd.key
参数释义:-f 前台运行 -h 网站目录 -s https端口 -C https证书 -K https密钥
其中 /mnt/msata/bugxia
路径即为上述保存 docker-18.09.1.tgz 的根路径
4.测试
wget --no-check-certificate https://download.docker.com/linux/static/stable/x86_64/docker-18.09.1.tgz
5.开始部署docker环境
完美通过
6.收尾工作
结束当前SSH端运行的uhttpd,然后修改/etc/config/uhttpd,将刚刚修改过的https端口444改回原本的443
回到SSH,输入命令重启uhttpd服务
/etc/init.d/uhttpd restart
一条评论