Guide
    Proxmox Content Hub

    How to Migrate a Raspberry Pi to a Proxmox Container

    How to Migrate Raspberry Pi to a Proxmox Container. Learn Storage, Backup, and Containers with practical Proxmox steps.

    Your hardware and storage layout

    - Dell 7000 Micro (i5-12500T, 32GB RAM)

    - 512GB NVMe for Proxmox and VMs

    - 1TB NVMe for media and storage

    - USB drive for backups

    - Filesystem: ext4 (single disk, no mirroring)

    That layout is fine for a single node homelab that doesn't need redundancy.

    LXC vs Ubuntu VM for Docker

    Docker inside a VM

    - Most familiar setup (like your Pi)

    - Full isolation from host

    - Safe experimentation

    - Easy restore via snapshots

    - Best starting point when migrating

    LXC containers

    - Lower overhead than VMs

    - Better direct hardware access (e.g., GPU)

    - Faster boot times

    - More granular service separation

    - Slightly more complex management

    If you’re unsure, start with a dedicated Docker VM. You can move services into their own LXC containers later if you want them more separated.

    Resource allocation

    - CPU cores can safely be overcommitted in most homelab workloads.

    - Avoid heavy RAM over-provisioning for VMs, because they cache aggressively.

    - Disk size is easier to grow than to shrink, so plan the initial allocation carefully.

    For most home workloads, RAM planning is more important than CPU.

    GPU considerations (Intel UHD vs dedicated GPU)

    If you plan to use Plex, Jellyfin, or Frigate with hardware acceleration:

    - LXC makes sharing Intel integrated graphics easier across multiple containers.

    - A VM using GPU passthrough dedicates the device exclusively to that VM.

    - If it’s your only GPU, full passthrough removes host display access.

    For Intel UHD on a 12500T, LXC is often simpler for media workloads.

    Opnsense, DHCP and AdGuard placement

    - Double NAT is fine for internal lab segmentation.

    - Kea DHCP and dnsmasq both work.

    - Running AdGuard inside Opnsense centralizes DNS filtering.

    - Running AdGuard in Docker keeps it portable and easier to migrate.

    Which one you pick comes down to how you prefer to manage things; neither is wrong.

    Frequently asked questions

    Is running all Docker containers inside one VM bad practice?

    No. It’s simple and reliable, and plenty of homelabs run that way.

    Should I migrate everything to LXC immediately?

    Not necessarily. Gradual separation works best.

    Does over-provisioning CPU hurt performance?

    Rarely in home environments unless you saturate the system.

    What’s the safest migration path from Raspberry Pi?

    Start with a Docker VM, restore your Portainer stack, then refine architecture over time.

    Need help with Proxmox?

    Use the form below to get in touch about migrations, troubleshooting, and Proxmox design work.