在当今的云计算和虚拟化技术中,Proxmox VE(PVE)作为一种强大的开源虚拟化平台,受到了许多系统管理员和开发者的青睐。而在PVE环境中安装Docker,成为了许多用户的需求。本文将详细探讨在PVE环境中安装Docker的两种主要方案:使用LXC容器和虚拟机(VM)。我们将从安装步骤、性能对比、使用场景等多个角度进行分析,并附上实践中常见的故障排查技巧,帮助您选择最适合的方案
一、Docker与PVE简介
Docker 是一种开源的容器化平台,它允许开发者将应用程序及其依赖环境打包成一个独立的容器,从而实现“一次构建,到处运行”。Docker的出现极大地简化了应用程序的部署和管理。
Proxmox VE(PVE) 是一个基于Debian的开源虚拟化平台,支持KVM虚拟机和LXC容器。它提供了一个易于使用的Web界面和强大的命令行工具,适用于构建和管理虚拟化环境。
二、LXC容器方案
1. 什么是LXC?
LXC(LinuX Containers)是一种操作系统级别的虚拟化技术,它允许在同一个主机上运行多个隔离的Linux系统。每个容器都有自己的文件系统、网络接口和进程空间。
2. 在LXC容器中安装Docker的详细步骤
创建特权LXC容器
登录PVE Web界面,点击“创建CT”。
常规:设置容器ID(如100)、
主机名(如docker-lxc)
务必取消勾选“无特权的容器”(Docker需要特权)
模板:选择Debian 12或Ubuntu 22.04模板
磁盘:分配20~50 GB
CPU:至少2核。 内存:至少2 GB。
网络:桥接vmbr0
设置静态IPv4和网关
创建后不要启动,先进行下一步配置。
修改LXC配置文件(关键步骤)
在PVE宿主机Shell中执行:
nano /etc/pve/lxc/100.conf # 替换为实际容器ID
在文件末尾添加以下三行:
lxc.cgroup.devices.allow: a
lxc.cap.drop:
lxc.cgroup2.devices.allow: c 10:200 rwm
保存后启动容器:
pct start 100
通过Web控制台或pct enter 100进入容器终端。
更新容器系统并配置国内源(加速下载)
apt update && apt upgrade -y
# 可选:配置国内源(以Debian 12为例)
#保存原文件
cp /etc/apt/sources.list.d/debian.sources /etc/apt/sources.list.d/debian.sources.bak
修改文件
nano /etc/apt/sources.list.d/debian.sources
# 替换为清华源内容
Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/debian/
Suites: bookworm bookworm-updates bookworm-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
URIs: https://security.debian.org/debian-security
Suites: bookworm-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
#更新国内源(加速下载)
apt update
安装Docker
apt install docker.io -y
systemctl start docker
systemctl enable docker
验证Docker安装
docker --version
查看服务状态:
systemctl status docker
尝试手动启动:
systemctl start docker
开启SSH远程访问(便于管理)
apt install openssh-server -y
# 修改/etc/ssh/sshd_config,
设置PermitRootLogin yes和PasswordAuthentication yes
启动并启用 SSH
systemctl enable sshd && systemctl start sshd
passwd root # 设置root密码
验证安装
docker run hello-world
阅读全文
醉客YUNYI