群晖Docker安装openwrt简易流程

2020-07-25 09:51:12 54点赞 429收藏 70评论

在docker安装openwrt前要准备三个前提:

一、开启ssh并启用root,这个就不赘述了,百度一下或者张大妈都有很多教程的。

二、docker安装Portainer可视化面板;

三、开启设置以太网卡开启混杂模式,docker搭建macvlan网络。

直接从第二步开始,这里提供一个Portainer中文可视化面板(感谢网络上大佬提供的),先把下载解压出来,然后上传到docker下面,如图所示

Portainer中文可视化面板链接: https://pan.baidu.com/s/1Y1D1VVhYePOcRe1N9D2iRg 提取码: sh8vPortainer中文可视化面板链接: https://pan.baidu.com/s/1Y1D1VVhYePOcRe1N9D2iRg 提取码: sh8v

然后用putty登录并进入root,然后运行代码

docker run -d --restart=always --name=portainer -p 9999:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data -v /volume1/docker/public:/public portainer/portainer

当如下图所示表示portainer已经下载安装并启动了

群晖Docker安装openwrt简易流程

这时可以回到群晖看到portainer已经启动,Putty先不要关,还会用到

群晖Docker安装openwrt简易流程

接下来进入群晖ip加端口9999就可以进入portainer,第一次启动会要求设置密码,设置好久可以进入portainer管理docker

群晖Docker安装openwrt简易流程

接下来就是选择管理连接环境了,我们是要管理本地的docker,所以选择本地管理环境后,点connect。

群晖Docker安装openwrt简易流程

下面选择管理本地docker

群晖Docker安装openwrt简易流程

群晖Docker安装openwrt简易流程

到这里就算完成一大半了,然后回到putty

先设置以太网卡开启混杂模式,在putty输入代码

ip link set eth0 promisc on docker

群晖Docker安装openwrt简易流程

然后docker搭建macvlan网络,macvlan作用自行百度,putty输入代码(这里要注意的是192.168.2.0/24要根据你群晖的主机子网段设定,而192.168.2.2是群晖获取的路由网关,如我的群晖ip是192.168.2.229,网关192.168.2.2,最后的macnet是建立的网络名称,可以自行修改)

docker network create -d macvlan --subnet=192.168.2.0/24 --gateway=192.168.2.2 -o parent=eth0 macnet

群晖Docker安装openwrt简易流程

回到docker或者portainer,点开网络就可以看到新建的macvlan的连接

群晖Docker安装openwrt简易流程

到这里基本上算是把群晖docker安装openwrt的环境搭完了,接下去就是下载openwrt,回到群晖的docker,注册表搜索openwrt,这里会搜到很多大佬发布的openwrt,但是并不是都能运行,有些是适配arm的,有些是适配路由器的,我这里openwrt/rootfs,我的这台群晖cpu是d2550,就选择x86-64版本下载

群晖Docker安装openwrt简易流程

下载完成后就是运行镜像了,这里设置就简单很多了,一个是把网络设置为新建的macnet,一个是把端口全删了,然后就可以直接运行了,这里要说下在网络设置你要先添加macnet,然后再删除其他的网络,没办法删除其他网络再添加

群晖Docker安装openwrt简易流程

群晖Docker安装openwrt简易流程

运行启动后,就可以进入路由看看openwrt获取的ip,然后通过ip就可以进入openwrt进行设置了。

群晖Docker安装openwrt简易流程

群晖Docker安装openwrt简易流程

然后倒了这里你是不是想说坑爹啊,portainer装了没用啊,这是因为安装的openwrt/roots的网口是默认的dhcp自动获取ip

群晖Docker安装openwrt简易流程

而docker里面有一些openwrt的网口是固定ip,就需要用portainer进入控制台手动改ip,那样才能进入openwrt管理,我们刚才docker搜索出来的openwrt有个大佬发布的raymondwong/openwrt_r9,这个就是要通过控制台修改ip,这里演示下怎么进入控制台修改,安装raymondwong/openwrt_r9跟安装openwrt/roots一样,启动好以后进入portainer,点开容器,如图所示点开进入控制器

群晖Docker安装openwrt简易流程

直接点连接(这里的控制台有三个选项/bin/ash、/bin/bash、/bin/sh,有的可能只有一种可以进入控制台,有的可能三种都可以,如果默认连接不了,就选择别的试试,总有一个可以连接到控制台的。)

群晖Docker安装openwrt简易流程

这样就进入类似ssh的命令行控制界面,然后手动输入代码vi /etc/config/network,回车

群晖Docker安装openwrt简易流程

然后点键盘i,通过方向键移动到需要修改的位置,修改ip网关跟dns,改好以后按esc,然后再输入:wq保存退出。

群晖Docker安装openwrt简易流程

修改完成后直接输入代码/etc/init.d/network restart

群晖Docker安装openwrt简易流程

然后进入路由就能看到openwrt显示出来了

群晖Docker安装openwrt简易流程

群晖Docker安装openwrt简易流程

因为时间问题,所以也没有排版,如有不足错误之处请指教,当然有一些高端问题还是不要问我,我也是个老菜。



展开 收起
70评论

  • 精彩
  • 最新
  • 群晖不是有虚拟机吗?为什么庶恋情DOCKER来安装OPENWRT?咨询损耗更少吗?还是有其它好处?

    校验提示文案

    提交
    有些cpu不支持虚拟化,不能使用虚拟机,比如我这里用的d2550,想要黑裙软路由openwrt,就用docker

    校验提示文案

    提交
    不考虑性能损耗情况下,docker管理比虚拟机方便很多

    校验提示文案

    提交
    收起所有回复
  • 其实不一定非要portainer,可以拉取镜像后再容器内打开终端机修改静态地址。
    我是在portainer遇到编辑错排的问题,目前esir的固件我用不了各类科学上网插件。

    校验提示文案

    提交
    [喜极而泣] 是的,可以直接用docker的终端机,至于科学小猫咪插件可以用

    校验提示文案

    提交
    收起所有回复
  • 用VM更好啊

    校验提示文案

    提交
    D2550没办法vmm [大囧]

    校验提示文案

    提交
    请问为啥vm要比docker好?

    校验提示文案

    提交
    收起所有回复
  • openwrt是能跑起来,代理插件一个都不能用

    校验提示文案

    提交
    小猫咪可以用 [邪恶]

    校验提示文案

    提交
    小猫咪插件在哪可下载呀?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 小钢炮应该也可以这样安装吧?

    校验提示文案

    提交
    小钢炮有点类似,但是小钢炮用的是arm版本的openwrt,张大妈也有人发表过,网上教程就多的很了,这个主要是针对群晖的docker

    校验提示文案

    提交
    小钢炮是什么?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 不是说群晖docker安装openwrt的插件用不了吗,修复了?

    校验提示文案

    提交
    这个我还没试

    校验提示文案

    提交
    收起所有回复
  • 我跟着流程来,最后路由器里能看到openwrt连入,但是输入显示的ip进不去openwrt界面。看了好多别的教程也都是到这一步进不去 [损失几个亿]

    校验提示文案

    提交
    不知道你用的是哪个openwrt,可能有的得通过控制器设置ip

    校验提示文案

    提交
    按照截图里面看到的对应的docker印象 我是 1900 也是 图片里面的*86-64 也是能在路由器看到IP地址,输入IP地址进不去

    校验提示文案

    提交
    还有12条回复
    收起所有回复
  • 为啥同一个docker镜像源,你拉取以后直接带luci界面吗?我的就没有..

    校验提示文案

    提交
    [抽烟] 呃,如果获取到了ip,直接从ip进去就是luci界面了

    校验提示文案

    提交
    收起所有回复
  • 然后docker搭建macvlan网络,macvlan作用自行百度,这里有大佬给个教程连接吗

    校验提示文案

    提交
    我这个就是教程,我那句话之前说macvlan的功能自己百度,因为解释macvlan又是一大堆 [皱眉]

    校验提示文案

    提交
    百度弄了好久没成功,最后还是选择了vm安装

    校验提示文案

    提交
    收起所有回复
  • 请问为什么我进入以后,没有注册用户名和密码的选项,只有用户名和密码登陆?怎么也找不到注册的地方,谢谢~

    校验提示文案

    提交
    portainer其实非必要的,你可以通过docker的终端机,然后点新增,就会有个bash,通过这个也可以进行修改openwrt的ip等选项

    校验提示文案

    提交
    谢谢!

    校验提示文案

    提交
    收起所有回复
  • 这个默认一个lan扣,如果群晖有2个网口一起使用,要怎么添加,还是软路由Openwrt会自动识别出来两个?容器没这么高级吧?

    校验提示文案

    提交
    道理一样,在另一个网口也绑定个macvlan,创建容器时候把两个macvlan都选上

    校验提示文案

    提交
    好的,厉害了,不知道这个docker的和vmm两个哪个效率好点?vmm太吃CPU了

    校验提示文案

    提交
    收起所有回复
  • 请教下,我现在群晖220+已经用虚拟机跑 openwrt有没有必要换成docker的?

    校验提示文案

    提交
    没必要

    校验提示文案

    提交
    收起所有回复
  • Start container openwrt failed: {"message":"failed to create the macvlan port: device or resource busy"}.

    校验提示文案

    提交
  • 按照流程安装好后,无法启动,显示API 失败,求解答

    校验提示文案

    提交
    关闭open vswitch

    校验提示文案

    提交
    收起所有回复
  • 所有步骤都成功了,现在就差最后一步了。启动openwrt后路由器里的openwrt地址是192.168.1.9。portainer查看openwrt容器的networks下面的macnet地址是192.168.1.2。portainer的方法vi /etc/config/network查看就只有lo网络的信息网络名wan 地址172.2.0.0那种,而不是楼主最后图片的macnet。

    校验提示文案

    提交
  • 我尝试了好多images,也试了好多方法。按照作者的方法,用同一个images,可以获取到IP,但是web访问不了。扫描了一下只开放22,25,53,110端口,没有80或者443。修改了network的配置,增加lan口参数也不可以。

    校验提示文案

    提交
  • portainer没有注册界面怎么办

    校验提示文案

    提交
    又可以了!

    校验提示文案

    提交
    收起所有回复
  • Start container adguard-adguardhome1 failed: {"message":"failed to create the macvlan port: device or resource busy"}.

    这个错误

    校验提示文案

    提交
  • 想什么就有人发什么,头疼好几天在群晖安装openwrt的事,瞌睡来了立马有了枕头。 [得意] [得意] [得意]

    校验提示文案

    提交
  • 亲,小小值发现您参加的#挑战数码玩家#活动还没有选择pk阵营,没有选择pk战队,可能会对您的参赛结果造成影响,现在只要回复您想加入的红蓝战队(红队vs蓝队),即可参与本周战队金币瓜分赢千元大奖!

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

梁下君子

上午把车看好了也试驾了奔驰350,有现车感觉还可以。计划明天付定金,下午去看房子,连排的别墅价格还行,380平的,门口有花园能停车,折扣已经谈好且定下了,现在万事俱备, 只看双色球了。不中的话,一天白忙乎了!

发文累计被1228人收藏

关注 打赏
作者其他文章
最新文章 热门文章
429
扫一下,分享更方便,购买更轻松