Setup & Deployment
How to Run OpenClaw on Proxmox (LXC and VM Setup Guide)
4 min read · Updated 2026-03-01
By DoneClaw Team · We run managed OpenClaw deployments and write from hands-on production experience.
Proxmox is the homelab king — and it's the perfect platform for running OpenClaw. You get isolation, snapshots, easy backups, and the ability to run local LLMs with GPU passthrough. No VPS rental needed; your agent runs on hardware you own. This guide covers both LXC (lightweight, recommended) and VM approaches, plus advanced setups with Ollama and GPU passthrough.
Why Proxmox for OpenClaw?
Compared to running OpenClaw directly on bare metal or a cheap VPS, Proxmox offers a compelling combination of features.
In terms of resource efficiency, LXC containers are the best option alongside bare metal, both earning top marks, while VMs and VPS hosting are slightly less efficient. For isolation, VMs and VPS provide excellent separation, LXC offers good isolation, and bare metal provides none.
Snapshots and rollback are built into both LXC and VM on Proxmox, sometimes available on VPS, and not available on bare metal. GPU passthrough is fully supported on VMs and bare metal, partially supported on LXC, and not available on VPS.
Backup and restore is built into Proxmox for both LXC and VM, varies by VPS provider, and requires manual setup on bare metal. Monthly cost is zero for LXC and VM since you use your own hardware, $5-10 for VPS, and zero for bare metal. Uptime depends on your power and internet for all self-hosted options, while VPS typically guarantees 99.9%+.
**Best for:** Homelabbers who already run Proxmox, privacy-first users who want everything local, and anyone running local LLMs with Ollama.
Option A: LXC Container (Recommended)
LXC is lightweight — OpenClaw runs with ~128MB RAM and minimal overhead. Perfect for most use cases.
**Create the Container via Proxmox Web UI:** Download an Ubuntu 22.04 or 24.04 LTS template from Datacenter, Storage, CT Templates, then Templates, and download ubuntu-24.04-standard. Click "Create CT" and set hostname to openclaw, set a root password, select the ubuntu-24.04-standard template, allocate 8GB minimum disk (20GB if using skills/storage), 2 CPU cores, 512MB memory (1GB if running skills that fork processes), DHCP or static IP on your LAN for network, and use host settings for DNS. Then start the container.
**Create the Container via CLI:**
- nesting=1 — Required for OpenClaw's child processes
- unprivileged 1 — Security best practice
# On Proxmox host
pveam download local ubuntu-24.04-standard_24.04-2_amd64.tar.zst
pct create 200 local:vztmpl/ubuntu-24.04-standard_24.04-2_amd64.tar.zst \
--hostname openclaw \
--memory 512 \
--cores 2 \
--rootfs local-lvm:8 \
--net0 name=eth0,bridge=vmbr0,ip=dhcp \
--features nesting=1 \
--unprivileged 1 \
--start 1Install OpenClaw
Enter the container and install OpenClaw with Node.js 22.
# Enter the container
pct enter 200
# Install Node.js 22
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt-get install -y nodejs
# Verify
node -v # Should show v22.x
# Install OpenClaw
npm install -g openclaw
# Initialize
openclaw init
# Configure your model
openclaw config set providers.anthropic.apiKey sk-your-key
# Set up Telegram (or your preferred channel)
openclaw config set channels.telegram.token YOUR_BOT_TOKEN
# Start the gateway
openclaw gateway start
# Install as a service so it starts on boot
openclaw service install
openclaw service startContainer Resources
Monitor resource usage after a few days and adjust.
- **RAM:** 100-200MB idle, spikes to 400MB during heavy tool use
- **CPU:** <5% idle, spikes during AI inference (which happens on the API provider's side)
- **Disk:** 500MB base + your workspace files
- **Network:** Minimal — just API calls and messaging
# Check from Proxmox host
pct exec 200 -- free -h
pct exec 200 -- df -h
# Adjust if needed
pct set 200 --memory 1024 # Increase to 1GB
pct set 200 --cores 4 # More CPU for complex queriesOption B: Virtual Machine
Use a VM if you need GPU passthrough for local models or want full OS isolation.
# Download Ubuntu Server ISO first, upload to Proxmox storage
qm create 201 \
--name openclaw-vm \
--memory 2048 \
--cores 4 \
--cpu host \
--scsihw virtio-scsi-single \
--scsi0 local-lvm:20 \
--ide2 local:iso/ubuntu-24.04-live-server-amd64.iso,media=cdrom \
--net0 virtio,bridge=vmbr0 \
--ostype l26 \
--boot order=ide2
qm start 201GPU Passthrough for Ollama
This is the killer feature — run local LLMs at full speed.
**1. Enable IOMMU on the Proxmox host:**
# Edit GRUB (Intel)
nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"
# Or for AMD:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"
update-grub
# Blacklist GPU drivers on host
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nvidia" >> /etc/modprobe.d/blacklist.conf
echo "options vfio-pci ids=10de:xxxx,10de:yyyy" >> /etc/modprobe.d/vfio.conf
update-initramfs -u
reboot
# Add GPU to VM
qm set 201 --hostpci0 0000:01:00,pcie=1
# Inside the VM — install Ollama
apt install nvidia-driver-535
# Install Ollama
curl -fsSL https://ollama.com/install.sh | sh
# Pull a model
ollama pull llama3:8b
ollama pull mistral
# Configure OpenClaw to use Ollama
openclaw config set providers.ollama.baseUrl http://localhost:11434
openclaw config set models.default ollama/llama3:8bNetworking
**Static IP (Recommended):**
network:
ethernets:
eth0:
addresses: [192.168.1.50/24]
gateway4: 192.168.1.1
nameservers:
addresses: [1.1.1.1, 8.8.8.8]
netplan applyAccessing from Outside Your Network
If you want to message your agent from anywhere (not just your LAN), you have several options.
**Option 1: Tailscale (Recommended).** Install Tailscale in the container or VM and your OpenClaw is accessible via its Tailscale IP from anywhere. See our Tailscale guide.
- **Option 2: Reverse proxy.** If you are already running Nginx or Traefik on Proxmox, set up a reverse proxy to your OpenClaw container's IP and port.
- **Option 3: Port forwarding.** Not recommended for security reasons, but works. Forward your router's port 18789 to the container's IP. Use with a gateway token for authentication.
# In the container/VM
curl -fsSL https://tailscale.com/install.sh | sh
tailscale up
server {
server_name openclaw.yourdomain.com;
location / {
proxy_pass http://192.168.1.50:18789;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}Skip 60 minutes of setup — deploy in 60 seconds
DoneClaw handles Docker, servers, security, and updates. Your OpenClaw agent is ready to chat in under a minute.
Deploy NowBackups and Snapshots
This is where Proxmox really shines.
**Snapshots (Instant Rollback):**
# Before making changes
pct snapshot 200 pre-update --description "Before OpenClaw update"
# If something breaks
pct rollback 200 pre-update
# List snapshots
pct listsnapshot 200Automated Backups
Set up in Proxmox: Datacenter, Backup, Add. Configure your backup storage, schedule daily at 3 AM, select just the OpenClaw container (ID 200), use Snapshot mode, ZSTD compression, and keep last 7.
Your entire OpenClaw instance — agent, memory, skills, config — backed up daily and restorable in minutes.
Migration
Moving OpenClaw between Proxmox nodes is straightforward.
# Live migration (if using shared storage)
pct migrate 200 target-node --online
# Offline migration
pct migrate 200 target-nodeProduction Hardening
**Auto-Start on Boot:**
# LXC
pct set 200 --onboot 1 --startup order=2
# Verify OpenClaw service starts
pct enter 200
systemctl enable openclawResource Limits
Prevent runaway processes from affecting other VMs.
pct set 200 --memory 1024 --swap 512 --cpulimit 2Firewall
Lock down the container to only allow necessary traffic. For full security recommendations, see our hardening checklist.
# On Proxmox host — only allow necessary traffic
pct set 200 --firewall 1
# In container
ufw enable
ufw allow 18789/tcp # OpenClaw gateway (only if needed externally)
ufw allow 22/tcp # SSHMonitoring
Check container health from the Proxmox host and set up email alerts for container issues.
# Check container health from Proxmox host
pct status 200
pct exec 200 -- openclaw gateway status
pct exec 200 -- systemctl status openclawProxmox Helper Scripts
The Proxmox community has helper scripts that simplify container creation. Note: Verify any community scripts before running them. Read the source first.
# Check tteck/Proxmox for community scripts
# These automate the entire setup process
bash -c "$(wget -qO - https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/openclaw.sh)"Conclusion
Proxmox is the ideal platform for running OpenClaw in a homelab. LXC containers give you lightweight, efficient hosting with built-in snapshots and backups. VMs unlock GPU passthrough for running local models with Ollama at full speed. Either way, you get the isolation, rollback capability, and migration features that make Proxmox the homelab standard. For most users, an LXC container with 512MB RAM and 2 cores is all you need to run a fully functional AI agent on your own hardware.
Skip the setup? DoneClaw deploys OpenClaw for you — $29/mo with 7-day free trial, zero configuration.
Skip 60 minutes of setup — deploy in 60 seconds
DoneClaw handles Docker, servers, security, and updates. Your OpenClaw agent is ready to chat in under a minute.
Deploy NowFrequently asked questions
Should I use LXC or a VM for OpenClaw on Proxmox?
LXC for 90% of users. It is lighter on resources (128MB RAM, minimal overhead) and simpler to manage. Use a VM only if you need GPU passthrough for running local models with Ollama, since full GPU passthrough requires a VM.
How much RAM does OpenClaw need on Proxmox?
512MB is comfortable for the LXC container. OpenClaw typically uses 100-200MB idle and spikes to around 400MB during heavy tool use. You can start with 512MB and increase to 1GB if you run skills that fork processes.
Can I run Ollama with OpenClaw in an LXC container?
CPU-only Ollama works in LXC. For GPU-accelerated inference, you need a VM with PCIe passthrough configured, or a privileged LXC with device mapping, which is more complex and less secure.
Will OpenClaw survive a Proxmox reboot?
Yes, if you configure two things: set onboot=1 on the container with pct set 200 --onboot 1, and enable the OpenClaw service inside the container with systemctl enable openclaw.
How do I back up my OpenClaw instance on Proxmox?
Proxmox has built-in backup and snapshot features. Use pct snapshot for instant rollback points before updates, and set up scheduled backups in the Proxmox UI (Datacenter, Backup, Add) for daily automated backups. Your entire agent including memory, skills, and config is included.