在 Proxmox VE (PVE) 下安装 Docker

举报
yd_286493358 发表于 2026/10/19 02:37:15 2026/10/19
【摘要】 第一步:创建支持 Docker 的 LXC 容器Docker 需要容器内部支持嵌套虚拟化(Nesting)。下载 Debian 或 Ubuntu 模板:在 PVE 的 Web 界面中,点击你的存储(比如 local) -> CT Templates -> Templates。搜索并下载 debian-12-standard 或 ubuntu-24.04-standard(推荐 Debian ...

第一步:创建支持 Docker 的 LXC 容器

Docker 需要容器内部支持嵌套虚拟化(Nesting)。

  1. 下载 Debian 或 Ubuntu 模板:

    • 在 PVE 的 Web 界面中,点击你的存储(比如 local) -> CT Templates -> Templates。

    • 搜索并下载 debian-12-standard 或 ubuntu-24.04-standard(推荐 Debian 12,轻量稳定)。

  2. 创建容器:

    • 点击右上角的 Create CT。

    • General:填写主机名(例如 docker-ct),设置密码。

    • Template:选择刚刚下载的 Debian 12 模板。

    • Disks:分配磁盘空间(根据你的需求,比如 32GB 或更多)。

    • CPU:分配核心数。

    • Memory:分配内存(建议至少 2GB)。

    • Network:配置网络(通常选择桥接 vmbr0,配置静态IP或DHCP)。

    • 完成创建。

  3. 【关键步骤】开启嵌套虚拟化:

    • 在 PVE 宿主机的 Shell(命令行)中,修改刚才创建的容器配置文件(假设容器 ID 是 100):

      Bash
      nano /etc/pve/lxc/100.conf
      
    • 在文件末尾添加以下两行:

      Plaintext
      features: nesting=1
      

      (注:如果需要挂载显卡或特殊硬件,可能还需加上 keyctl=1,纯 Docker 通常只需 nesting=1)

    • 保存并退出(Ctrl+O 保存,Enter 确认,Ctrl+X 退出)。

    • 重启容器(在 PVE 界面中将容器 Stop 然后 Start)。

第二步:在容器中安装 Docker

  1. 进入容器命令行:

    • 在 PVE 界面中点击你的 Docker 容器 -> Console(控制台),登录(用户名 root,密码为你设置的密码)。

  2. 更新系统并安装依赖:

    Bash
    apt update && apt upgrade -y
    apt install -y curl apt-transport-https ca-certificates gnupg lsb-release
    
  3. 安装 Docker 官方仓库及 Docker Engine:

    • 添加 Docker 官方 GPG 密钥:

      Bash
      install -m 0755 -d /etc/apt/keyrings
      curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/keyrings/docker.gpg
      chmod a+r /etc/keyrings/docker.gpg
      
    • 写入 Docker 软件源:

      Bash
      echo \
        "deb [arch=$(dpkg --print-architecture) signed-by=/etc/keyrings/docker.gpg] https://download.docker.com/linux/debian \
        $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
        tee /etc/apt/sources.list.d/docker.list > /dev/null
      
    • 安装 Docker:

      Bash
      apt update
      apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
      
  4. 验证安装:

    Bash
    docker run hello-world
    

    如果看到 "Hello from Docker!" 的欢迎信息,说明 Docker 已经成功安装并运行。

💡 核心优势与后续建议

  • 资源隔离:通过 LXC 运行 Docker,既保留了容器的高性能和轻量(几乎无虚拟化性能损耗),又避免了直接污染 PVE 宿主机环境。

  • 备份与恢复:你可以随时在 PVE 中对这个 Docker 容器进行快照(Snapshot)或完整备份(Backup),折腾坏了可以一键还原。

  • Docker Compose:上面安装命令中已经包含了 docker-compose-plugin,你可以直接使用 docker compose version 来验证,方便后续通过 docker-compose.yml 管理多容器应用。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。