PVE使用LXC搭建openwrt

post by rocdk890 / 2022-12-22 16:21 Thursday linux技术
之前给大家说了怎么制作openwrt docker镜像,今天给大家说下怎么在PVE里用LXC来搭建openwrt.

1.制作LXC容器模板
其实方式跟制作docker openwrt镜像差不多的.
mkdir openwrt && cd openwrt
cp ~/openwrt-spp-k54-autumn[2022]-x86-64-generic-squashfs-legacy.img.gz . 
gunzip openwrt-spp-k54-autumn[2022]-x86-64-generic-squashfs-legacy.img.gz

Total_size=$((`fdisk -l openwrt-spp-k54-autumn[2022]-x86-64-generic-squashfs-legacy.img|grep .img2|awk '{print $2}'` * 512))

mkdir op
mount -o loop,offset=$Total_size openwrt-spp-k54-autumn[2022]-x86-64-generic-squashfs-legacy.img ./op
tar czf openwrt-rootfs.tar.gz -C ./op .

然后把制作好的模板上传或复制到PVE的CT模板目录/var/lib/vz/template/cache

scp ./openwrt-rootfs.tar.gz root@192.168.1.254:/var/lib/vz/template/cache/

2.新建LXC容器
通过SSH或者是网页端打开PVE终端,执行以下命令创建新容器
pct create 102 local:vztmpl/openwrt-rootfs.tar.gz --rootfs local-lvm:5 --ostype unmanaged --hostname CTOpenWrt --arch amd64 --cores 2 --memory 2048 --swap 0 -net0 bridge=vmbr0,name=eth0             

pct create:容器创建命令
102:容器ID,可根据自己情况设定
local:vztmpl/openwrt-rootfs.tar.gz: 为第三步骤所得到的固件包名称
--rootfs:模版为rootfs文件
local-lvm:5 :后面的数字代表分配的磁盘大小,比如我这里设置的为5,即为即将创建的容器分配2G的大小
--ostype unmanaged:操作系统类型,这里没有填写指定的操作系统(不会影响)
--hostname CTOpenWrt:主机名,也就是虚拟机名称
--arch amd64:设置为64位
--cores 2:分配给容器的核心数(我不知道这里是不是和docker一样,为最大限制)
--memory 2048:分配给容器最大的内存数量
--swap 0:交换分区设置为0
-net0 bridge=vmbr0,name=eth0:网卡,这里一定要设置,不然你的op没有办法连接到pve的虚拟交换机。

因为我是用来做旁路由的,所以就不需要再设置个网口来拨号.

3.最后启动LXC容器

进入web控制台启动CTOpenWrt.

最后就自己去web控制台里配置openwrt的ip那些.最后给你们来张图:
点击查看原图
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-798.html

标签: CT docker openwrt 容器 pve lxc 模板

  1. 2022-12-28 14:14
    @西门堵车:我建议你还是试试,pve的lxc性能更好.
  1. gravatar 西门堵车
    2022-12-28 11:28
    之前折腾了一次,没有成功
    现在又没心思折腾了,劲头过了,还是继续用KVM跑

评论: