这个方案已经构想了很长时间,也实验了一周,一直卡在如何给玩客云刷armbian上,因为刷了armbian才能装docker,网上由很多教程都没有说清楚关键,这里记录一些,也作为后续备用查询。
1. 刷armbian固件。
准备方法就不过多介绍了,网上有很多教程,拆机短接公对公usb之类的,这里要说明的是,usbburningtools一定要用2.2以下版本,因为刷armbian固件到emmc的时候,一定要选择这个,否则怎么都刷不成功,我就是因为用了2.3版本的耽误了好几天时间。
armbian的固件可以从下面的仓库下载,一定要选择后面带burn的固件。hzyitc/armbian-onecloud: Armbian for onecloud. 玩客云用armbian (github.com)
这里给一个我刷成功的固件名字:Armbian-unofficial_23.11.0-trunk_Onecloud_bullseye_current_6.1.63.burn.img.xz
下载完成后解压为img后缀的文件,用刷机软件导入后,选择擦除所以,刷机成功。
拔掉电源插网线重新上电,到路由器后台找到onecloud的ip地址,用ssh登录,ssh root@ip地址登录后台,设置密码,设置bash,ctrl+c跳过设置新用户后出现onecloud#就算配置成功,如果想设置静态ip,可以用armbian-config命令。建议用dhcp,这样盒子可以拿来拿去。
2. 安装ipanel面板。
1panel面板可以自动安装docker,安装管理后台,方便可视化操作,因为有的地方命令行有问题,就可以可视化去处理更方便。 安装比较傻瓜,注意各项设置后就能成功。
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
3. 挂载外置存储 SD卡或usb硬盘
我挂在的SD卡,用fdisk -l命令,查看sd卡挂载的硬件为/dev/mmcblk0
用 fdisk /dev/mmcblk0来创建主分区,创建完成的分区为mmcblk0p1, m可以查看帮助,这里掠过
用mkfs.ext4 /dev/mmcblk0p1来格式化新的分区
mkdir /one 创建盘符
mount -t /dev/mmcblk0p1 /one 把分区挂载到根目录one下
vi /etc/fstab 添加一个启动自动挂载
这样SD卡就挂载好了,我挂载的64G的卡。
4. 安装网心云docker容器版
docker run -d --name=wxedge --restart=always --privileged --net=host --tmpfs /run --tmpfs /tmp -v 磁盘路径:/storage:rw onething1/wxedge
磁盘路径就是上一步挂载的/one,我的命令可以修改为:
docker run -d --name=wxedge --restart=always --privileged --net=host --tmpfs /run --tmpfs /tmp -v /one:/storage:rw onething1/wxedge
完成后就创建好容器了,可以用http://ip:18888来查看网信云的运行状态,
业务里面默认会添加一些10G的业务,这样如果你是64g的业务,实际空间54g,占用了10g就剩44g,就无法添加别的业务了,所以建议删除所有10g业务,直接添加一个50g业务。删除之后如果不能释放空间,到1panel后台删除这个文件,然后重启容器就可以添加了。 这是容器魔方的bug,目前没办法,只能这样弄一下。
至此就可以重新添加50g任务了。然后绑定到网心云手机app里,就可以等着赚电费了。
5. 安装openwrt
回到ssh,执行下面命令下载专用的openwrt镜像
wget https://dl.openwrt.ai/releases/targets/meson/meson8b/openwrt-11.20.2023-meson-meson8b-thunder-onecloud-rootfs.tar.gz
打开网卡混杂模式
ip link set eth0 promisc on
创建名字为openwrt的macvlan网络
docker network create -d macvlan --subnet=10.0.0.0/24 --gateway=10.0.0.1 -o parent=eth0 openwrt
创建镜像
docker import openwrt-11.20.2023-meson-meson8b-thunder-onecloud-rootfs.tar.gz openwrt
创建容器
docker run --restart always --name openwrt -d --network openwrt --privileged openwrt:latest /sbin/init
如果不成功容器创建不出来,就到1panel里可视化界面创建,如下图,下面还有个重启模式选择一直重启,确定就可以创建成功了
创建成功后,把本地电脑网络改成ip 10.0.0.3,子网24,网关10.0.0.1,确认
浏览器登陆10.0.0.1就可以访问openwrt了,默认用户密码root,root。 首页网络向导配置为旁路由
把ip地址,网关都改成你现在网络的,保存应用,然后电脑也恢复dhcp获取IP, 重新用电脑登录新的openwrt的ip地址,就可以正常使用了。
至此,你的旁路由版网心云版玩客云盒子终于弄好了,可以一物二用了。
这个构想+实现查询了大量资料,弄了1周才搞好,特此发文纪念。 希望对大家有帮助。部分忽略的地方细节请见谅,方法可以自行查询,思路是没问题的。