2026 Proxmox VE 虚拟化入门:一台物理机跑满全家桶

3104 字
16 分钟
2026 Proxmox VE 虚拟化入门:一台物理机跑满全家桶

你有一台高性能的 NUC 或者旧电脑,想在上面跑 Immich、Jellyfin、青龙面板、OllamaAdGuard Home……全部塞进同一个系统里直接装 Docker 当然也能用。但这里有一个很实际的问题:所有服务共享一个操作系统环境。Docker 出了个 Bug 导致所有容器挂掉?不小心手抖执行了危险命令?硬盘写入满了导致系统崩溃?不管哪种情况,所有服务同时停摆。

你可能想说”我小心一点不就完了”,但长期维护过家庭服务器的人都知道——总有你没想到的意外。系统和 Docker 定期的内核更新、存储空间的增长、某个容器的日志把磁盘塞满——这些问题总会在你出差或者睡觉的时候发生。

Proxmox VE(简称 PVE)就是用来解决这个问题的。它是一个基于 Debian 和 KVM 的裸金属虚拟化平台,让你在一台物理机上运行多个完全隔离的虚拟机。每个虚拟机拥有自己独立的操作系统、独立的资源分配和独立的文件系统——一个虚拟机因为各种原因崩了,完全不影响其他虚拟机继续运行。而且它完全免费开源,社区活跃度在家庭实验室领域排第一。

部署好之后的一个常见架构是跑三个虚拟机:一号虚拟机跑日常 Docker 服务(Immich 存照片、Jellyfin 看影视、青龙做签到),二号虚拟机做开发测试环境随便折腾,三号虚拟机装 Windows 应急使用。各自独立互不干扰,一台物理机跑满全家桶。


一、前置条件#

  • 一台 x86 物理机。Intel 或 AMD 都行,建议至少 16GB 内存、256GB 硬盘。8GB 内存也能跑但很紧张,建议不要同时开太多虚拟机。
  • 一个 U 盘(8GB 以上),用来制作 PVE 安装盘。
  • BIOS 里开启虚拟化。Intel 的 CPU 需要开启 VT-x 和 VT-d,AMD 的 CPU 需要开启 SVM 和 AMD-Vi。这个是虚拟机硬件直通的基础,大部分新机器默认是开启的。不确定的话,开机按 F2 或 Del 进 BIOS 设置界面,在 CPU 配置或高级菜单里找一下。

如果你手头没有额外电脑:PVE 的 Web 管理界面需要在另一台设备的浏览器上访问。手机浏览器也能操作应急,但建议用电脑或平板,操作起来方便得多。


二、安装 PVE#

第一步,去官网 proxmox.com 下载 PVE 8.x 的 ISO 镜像。目前最新稳定版是 PVE 8.2,基于 Debian 12。建议下载这个版本。

第二步,用 Rufus(Windows 用户)或者 Ventoy(跨平台工具)把 ISO 写入 U 盘。Ventoy 的好处是不用反复格式化,把 ISO 文件直接拖进 U 盘就能启动。

第三步,插上 U 盘重启电脑,从 U 盘启动。引导菜单出现后选第一项开始安装。安装过程基本跟着向导走就行,有几个关键选择需要留意:

选择目标硬盘这一步要小心——安装过程会格式化整块硬盘,只保留 PVE 系统。如果你的旧电脑上还有重要数据,先备份到其他地方再动手。

设置 root 密码——这个密码是 PVE 系统管理员的最高权限凭证。建议用密码管理器生成一个复杂密码,抄下来贴到机器机箱上。忘了的话只能重装系统。

配置网络时填对信息——PVE 需要一个固定的局域网 IP。手动填写你局域网内的一个空闲地址,比如大多数家用路由器都在 192.168.1.x 网段,你可以给 PVE 分配 192.168.1.100。子网掩码通常填 255.255.255.0,网关填你路由器的地址(一般是 192.168.1.1)。DNS 推荐填 223.5.5.5(阿里 DNS)或者 114.114.114.114

等进度条走完,系统提示重启时拔掉 U 盘,重启。

三、登录管理界面#

安装完成后,用另一台电脑打开浏览器,访问 https://你的PVE的IP地址:8006。注意是 HTTPS 协议,默认用的是 8006 端口,不是常见的 443 或 80。

因为 PVE 使用的是自签名证书,浏览器会提示”连接不安全”或者”您的连接不是私密连接”。这是正常的——每个 PVE 安装都会自己生成一个证书,不是来自受信任的证书颁发机构。点”高级”→“继续前往”就可以进去了。

登录页面用 root 账号和你设置的密码登录。你会看到 PVE 的管理界面——左边是服务器列表和存储节点,中间是当前选中的资源和操作面板,右边是日志和控制台。

如果想在外面远程管理 PVE,建议配合 Tailscale 组网使用——PVE 的管理端口 8006 不暴露到公网,通过 Tailscale 的虚拟 IP 访问更安全。具体配置看Tailscale 组网教程。

四、创建第一台虚拟机#

登录后第一步:上传你需要的操作系统 ISO 文件。

左上角点击 local (pve) → 展开后点”ISO 镜像”→ 上传。推荐下载 Debian 12 或者 Ubuntu Server 24.04 LTS 的 ISO——这两个系统在 PVE 上跑 Docker 是最成熟的选择,文档和社区支持都很完善。

上传完成后开始创建虚拟机——点击右上角的蓝色「创建虚拟机」按钮:

配置项推荐值为什么这么设
名称比如 docker-host取个好认的名字,虚拟机多了你就知道这有多重要
ISO 镜像选择刚上传的确保选对了镜像文件
系统默认设置大部分场景不需要改
磁盘至少 32GB,推荐 64GB系统用 20GB,Docker 镜像和容器数据留 10GB 以上
CPU至少 2 核,类型选 host”host” 模式让虚拟机直接使用物理机 CPU 的全部指令集
内存至少 4GB,推荐 8GBDocker 服务,4GB 有点紧但够用
网络桥接模式 vmbr0虚拟机直接从路由器获取 IP,和局域网其他设备平级

创建完成后,选中虚拟机,点绿色的「启动」按钮。

五、在虚拟机里装系统和 Docker#

虚拟机启动后,在控制台窗口里你会看到操作系统安装画面。按照正常的步骤安装系统,设置好用户名和密码。

系统装好后登录进去,更新软件源然后安装 Docker

Terminal window
sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose-plugin -y

验证 Docker 是否正常工作和当前版本:

Terminal window
sudo docker info | grep "Server Version"
# 正常输出类似 Server Version: 26.x.x

然后你就可以像在自己电脑上一样用 Docker Compose 部署各种服务了。你把所有容器的 docker-compose.yml 和挂载目录放在虚拟机里,独立的文件系统让操作起来很安心——即使在虚拟机里搞坏了什么,物理机和其他虚拟机也不受影响。

六、备份与恢复#

PVE 最实用的功能是一键备份整个虚拟机。选中某个虚拟机 → 点「备份」→ 选存储位置 → 点「立即备份」。一个完整的系统镜像就保存好了。

但手动备份总是会忘。建议设置定时自动备份:

  1. 点击左侧树形结构顶部的「数据中心」
  2. 切换到「备份」选项卡 → 点「添加」
  3. 节点选你的 PVE 主机
  4. 存储local 或者你挂载的外部存储
  5. 计划0 3 * * *——这是 cron 表达式,代表每天凌晨 3 点执行
  6. 保留7——只保留最近 7 份备份,多余的自动清理
  7. 压缩选 ZSTD——压缩率高而且解压速度快
  8. 选上你要备份的虚拟机

设置好之后就不用手动备份了。服务器跑了一年,某天硬盘故障了——买块新硬盘重装 PVE,从备份文件恢复虚拟机,几分钟后所有服务全部回到故障前的状态。对比一下”Docker 容器全挂一个个重建”的场景,时间差几十倍。

七、LXC 容器 vs 虚拟机#

PVE 除了虚拟机还支持 LXC 容器。两者的区别在于:

对比维度虚拟机 (VM)LXC 容器 (CT)
隔离程度完全隔离,各自有独立内核共享宿主机内核
性能损耗较小,KVM 接近原生极小,几乎无性能损失
灵活性可以装 Windows、Linux 等任何系统只能运行 Linux
备份恢复支持完整快照支持快照且体积更小
适用场景跑 Docker 全家桶跑单一 Linux 服务

对新手来说怎么选? 日常跑 Docker 服务用虚拟机最省心,独立操作系统让你想重置就重置。LXC 适合跑 AdGuard Home、Pi-hole 这类单一服务的场景,占用资源极少。建议先只玩虚拟机,熟悉了再研究 LXC。

八、GPU 直通(选读)#

如果你要在虚拟机上跑 Jellyfin 做硬件转码,默认情况下虚拟机不能直接使用物理机的显卡或集成显卡。需要通过 GPU 直通把显卡分配给指定虚拟机独占使用。

操作分几步走:

首先,确认 BIOS 里 VT-d(Intel)或 AMD-Vi(AMD)已经开启。这一步之前说过了,但确实很重要——不开启的话后面所有操作都无效。

然后,编辑 PVE 的启动参数文件:

Terminal window
sudo nano /etc/default/grub
# 找到这行:
# GRUB_CMDLINE_LINUX_DEFAULT="quiet"
# Intel CPU 改成:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
# AMD CPU 改成:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"

保存后更新引导配置并重启:

Terminal window
sudo update-grub
sudo reboot

重启后登录 PVE,检查 IOMMU 是否成功启用:

Terminal window
dmesg | grep -i iommu
# 有正常输出说明成功了

最后在 PVE 界面上,选中目标虚拟机 → 硬件 → 添加 → PCI 设备 → 从列表中选择你的 GPU → 勾选”所有功能”(All Functions)和 “ROM-Bar”。

GPU 直通成功后在虚拟机的 Jellyfin 里启用硬件加速,选择对应的视频编码器即可。

但说实话: 新手建议先用 CPU 软解跑着。很多家用场景(同一时间一两个人看片)CPU 软解完全够用,先别碰 GPU 直通这个相对复杂的配置。等你对 PVE 操作熟练了再回来优化也不迟。

九、常见问题#

Q:登录管理页面提示连接不安全怎么办? 不是安全问题,是自签名证书导致的浏览器提示。点”高级”→“继续前往”就能正常登录。如果想彻底消除这个提示,可以在 PVE 的数据中心 → ACME 里配置 Let’s Encrypt 申请正式证书,但不是必须的步骤。

Q:虚拟机控制台一直黑屏? 虚拟机启动需要几秒到几十秒,等一会看看。如果长时间没反应,检查虚拟机的显卡类型——选 SPICE 或者 VGA 兼容性最好,不要选 VMware 兼容。

Q:备份文件太大怎么办? 备份时在选项里开启压缩,选 ZSTD 或 Gzip 都能明显缩小备份体积。另外保留份数设成 3-5 份就够用,不需要保留一个月的历史备份。

Q:物理机只有一个硬盘需要做 RAID 吗? 个人使用不用强行上 RAID。重要的是做好备份——把 PVE 的备份文件定期拷贝到另一台设备(NAS、另一台电脑的共享文件夹、云存储都可以)。单盘坏了好歹有备份恢复。

延伸阅读#


部署完 PVE,三四台虚拟机各司其职:一台跑 Docker 做主力服务器、一台做开发测试随便折腾、一台装 Windows 应急用。如果需要把虚拟机里的服务暴露到公网,用 Nginx Proxy Manager 统一管理域名和 HTTPS 证书,参考NPM 部署教程。一台物理机,三四个独立系统,互不干扰,备份一键恢复。这可能是家庭服务器最稳定的架构了。

推荐指数:⭐⭐⭐⭐⭐

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!

赞助
2026 Proxmox VE 虚拟化入门:一台物理机跑满全家桶
https://www.kshare.top/posts/2026-proxmox-ve-虚拟化入门一台物理机跑满全家桶/
作者
Kshare
发布于
2026-05-30
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
Kshare
Hello, I'm Kshare.
公告
站点已开启广告(类型:弹窗广告),给您带来的不便敬请谅解。如有更好的广告建议,欢迎发送邮件至 t9uzrz6u@anonaddy.me,感谢您的支持!
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
187
分类
9
标签
190
总字数
490,175
运行时长
0
最后活动
0 天前

文章目录