PVE篇!创建LXC容器
该篇教程主要讲解创建LXC容器
LXC:
全称为Linux Container,是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源。
LXC和Docker区别:
https://www.yzktw.com.cn/post/1288930.html
Docker:- Docker基于LXC,但是在LXC之上添加了很多自己的功能,例如可移植性、分发和部署。- Docker使用镜像来构建容器,镜像是一个只读模板,它包含运行应用程序所需的所有东西。- Docker容器是隔离的环境,具有自己的文件系统、网络和进程空间。- Docker容器可以在同一主机上的多个镜像之间共享操作系统内核。- Docker容器通常只用于运行单个应用程序或服务。LXC:- LXC是Linux容器的缩写,是原生linux内核提供的轻量级虚拟化技术。- LXC的容器只是在主机上的进程,共享同一个操作系统内核。- LXC容器可以运行多个应用程序或服务。- LXC容器可以在同一主机上共享文件系统和网络。- LXC容器适用于需要更接近于物理主机的隔离和资源独享的情况。综上:- Docker更适用于开发和部署单个、独立的应用程序。- LXC更适用于更高的隔离需求,例如多租户环境,同时也能够运行多个应用程序。
主要流程目录:
1.CT模板换源
2.存储空间
3.下载CT模板
4.创建LXC容器
5.配置LXC容器
5.1.映射LXC权限配置
5.2.核显配置
5.3.更换系统软件源
1.CT模板换源
来到Shell

CT模板换源
cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_backsed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm
重启服务
systemctl restart pvedaemon.service
Tip:
可能网页显示断联,刷新页面等待重新连接就行
2.存储空间
这里说一下我个人的一些存储习惯,我一般将数据分为系统数据(固态)和个人数据(放在机械硬盘)。所以下面安装LXC我也是一样的,系统数据和个人数据会放在不同存储空间中,当然你也可以选择全都放在一个空间方便管理也是没问题的。
3.下载CT模板
local(或者是你创建的“目录”) -> CT模板 -> 模板

选择模板下载(看自己需求即可)

下载完成(如果卡着不动,可以先按左上角停止,重新再下载)

可以看到下载的模板

4.创建LXC容器
点击创建CT

填写名称,需要特权(勾选去掉)

设置密码

选择模板

Tip:
如果硬盘空间不是太大,可以只给20G
硬盘空间大,打算安装比较多Docker可以给50G
如果不是系统数据和个人数据分开,看情况给大一点
这里主要是给Docker存放镜像

这里我还创建专门存放映射数据(个人数据)

分配CPU核心(可以将CPU全部都给上)

合理分配内存(考虑其他虚拟机分配情况)

参考设置IP

设置DNS域

确认没问题,点击完成

创建完成

5.配置LXC容器
来到shell(PVE节点)

5.1.映射LXC权限配置
查看模板ID

配置编辑
nano /etc/pve/lxc/[模板ID].conf
比如我这里就是:nano /etc/pve/lxc/102.conf
加入代码
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
保存(Ctrl+O)-> 回车 -> 退出(Ctrl+X)

5.2.核显配置
查看当前核显情况
配置编辑(和上面一样)
加入代码
lxc.cgroup2.devices.allow: c 226:0 rwm
lxc.cgroup2.devices.allow: c 226:128 rwm
lxc.cgroup2.devices.allow: c 29:0 rwm
lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir
lxc.mount.entry: /dev/fb0 dev/fb0 none bind,optional,create=file
保存(Ctrl+O)-> 回车 -> 退出(Ctrl+X)

5.3.更换系统软件源
启动容器

输入账号和密码

先看看核显是否正常(像下面有显示就是没问题)
LinuxMirrors:GNU/Linux 一键更换系统软件源脚本

获取到脚本

执行前需要先安装Curl
安装完成以后,执行一键更换系统软件源脚本
bash <(curl -sSL https://linuxmirrors.cn/main.sh)
随便选择一个软件源

输入Y,使用HTTP协议

输入n,更新软件包(注意这里是说是否跳过,更新需要时间比较久)

输入Y,清理软件包缓存

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~




校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案