为什么通过 lxc 安装 docker?

  • 系统占用小,硬件利用率最高

  • 启动速度快,体验完整

  • 方便测试各种功能

换源

国内的网络环境,我们用默认的源,无法下载到模板,我们先把ct模板的源替换为清华源。

cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_back
sed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm
reboot # 重启 pve

lxc 容器安装

我常用的是ubuntu,这个系统对新手相对来说比较友好。

  • 下载模板

在 pve 控制台,点选 local>CT模板>模板选项下,选择模板下载。我这里选择的是 ubuntu-24.04-standard。

​安装

区别于平时安装的虚拟机,我们需要点击右上角 创建ct

主机名随意,注意这里一定不要勾选 无特权的容器。

模板这里选择刚才下载的 ct 模板。

下面磁盘、CPU、内存根据实际情况设置或默认即可,我这里是 10G、1核、512M。

网络这里可以将 lxc 的 IP 地址和网关设置好。注意 IP 地址要以 192.168.1.111/24 模式填写。

安装完成后不要立即启动。

设置

  • UI 界面设置

打开控制台 lxc 节点的 选项 > 功能

嵌套----docker必须打开

nfs----方便我们链接存储

smb----同理

fuse----有一些软件需要打开这个选项,保证运行

  • 配置文件

我们需要编辑这个lxc容器的配置文件 /etc/pve/lxc/id.conf,保证docker容器的权限。

在 pve shell 中修改。

vi /etc/pve/lxc/100.conf # 100 为 lxc 容器 ID

在文件中添加如下内容:

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.apparmor.profile: unconfined

下面就可以启动 lxc 容器了。

安装 docker 环境

  • 几个必要的准备工作

apt update # 更新apt库
apt install -y vim language-pack-zh-hans-base # 安装编辑器和终端中文环境

在 /etc/profile​ 或 ~/.bashrc ​ 文件末尾添加 export LANG=zh_CN.UTF-8​ ,重启终端让终端支持中文显示。

编辑 vim /etc/ssh/sshd_config​ 文件,找到 #PermitRootLogin prohibit-password​ 删除注释并将其改为 PermitRootLogin yes,​重启 ssh 服务,这样可以用 ssh 工具远程登录 lxc 操作了。

service ssh restart
  • 安装 docker

apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin docker-model-plugin

或脚本安装:

curl -fsSL https://get.docker.com -o install-docker.sh
sh install-docker.sh
  • 安装 1panel 管理面板实现图形化的docker管理,也有丰富的应用商店,当然也可用 dpanel、portainer 作为 docker 管理替代。

curl -sSL https://resource.1panel.pro/quick_start.sh -o quick_start.sh && bash quick_start.sh