在软路由安装Proxmox后,可以使用LXC容器化安装Docker,来实现无限套娃。就没有必要去使用KVM再去安装一个系统来单独运行Docker。

Linux Container容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源。

简单来说,LXC的虚拟化基于宿主机的内核上去运行另外一个操作系统,并将这部分程序隔离,这就和Docker的原理很相似。虚拟机在运行的时候会虚拟化CPU,并在虚拟化的CPU再单独运行一套内核来安装系统,这样会有小小的性能损耗。

加载内核模块

Docker需要aufs和overlay的内核模块,LXC运行在宿主机的内核上,所以在宿主机内核加载这两个模块。

开机自动加载模块

1
2
3
4
5
6
vi /etc/modules

# 添加以下内容

aufs
overlay

临时解决办法,但是重启后需要重新加载

1
modprobe aufs && modprobe overlay

创建CT容器

点击右上角创建CT

LXC容器

系统选择CentOS。然后一步步指引完成创建容器。

由于LXC的一些设定,会导致docker运行会报权限不足,所以要开启套娃模式。

LXC容器

勾选按键和嵌套然后点击OK

LXC设定

这时候容器创建完毕,可以开机安装docker。

安装docker

安装相关依赖

1
yum install -y yum-utils device-mapper-persistent-data lvm2

添加国内安装源

1
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装Docker-ce

1
yum install docker-ce docker-ce-cli containerd.io

开启docker服务

1
2
systemctl enable docker
systemctl start docker

安装docker完成后,验证是否安装成功,运行docker run hello-world

Docker

没有报错,说明docker的环境构建完成,可以愉快的玩耍啦。