sarah 1b92d1bff7 Fix critical bugs and improve reliability, compatibility, and usability
- Fix Homebrew installation: install sudo, set sudoers permissions, and add transparent root wrapper
- Add Debian 12 fallback when Debian 13 template is unavailable
- Ensure proper OpenClaw token authentication configuration
- Dynamically resolve binary paths in systemd services
- Configure SSH root password login
- Clean stale VNC locks on startup and prevent screen-blanking
- Add --skip-daemon flag to onboarding shortcut to avoid service conflict
- Enable nesting and onboot autostart for container
- Prompt for VMID and storage pools with auto-detected defaults
2026-09-26 13:12:47 +02:00

OpenClaw on Proxmox — One Script, Full AI Assistant

Deploy your own OpenClaw AI assistant on any Proxmox server in minutes. One command, zero manual setup.

Why use this?

  • Self-hosted AI assistant — OpenClaw runs entirely on your hardware, under your control
  • One command to deploy — no manual package installation, no config file editing, no guesswork
  • Full remote desktop — access a graphical LXQt desktop from any browser via noVNC
  • Ready-to-use browser — Google Chrome with developer mode for OpenClaw browser extension
  • Lightweight container — runs in a privileged LXC (not a full VM), so it's fast and resource-efficient
  • Auto-starts on boot — all services (gateway, VNC, noVNC) are systemd-managed
  • Onboarding made easy — desktop shortcut walks you through OpenClaw setup step by step
  • Homebrew included — install OpenClaw skills right away

Quick Start

SSH into your Proxmox host and run:

bash <(curl -fsSL https://raw.githubusercontent.com/adadrag/Openclaw-Proxmox/main/setup-openclaw-lxc.sh)

That's it. The script will ask for a password, pick sensible defaults for everything else, and print your connection URLs when done.

Alternative install methods

Download first, then run:

wget -O setup-openclaw-lxc.sh https://raw.githubusercontent.com/adadrag/Openclaw-Proxmox/main/setup-openclaw-lxc.sh
chmod +x setup-openclaw-lxc.sh
./setup-openclaw-lxc.sh

Clone the repo:

git clone https://github.com/adadrag/Openclaw-Proxmox.git
cd Openclaw-Proxmox
chmod +x setup-openclaw-lxc.sh
./setup-openclaw-lxc.sh

What you get

After the script finishes, you'll have a fully configured LXC container with:

What How to access
OpenClaw Dashboard http://<container-ip>:18789/#token=<your-token>
Remote Desktop http://<container-ip>:6080/vnc.html?autoconnect=true&resize=scale
SSH ssh root@<container-ip>

The script prints all of this (including the direct token link) at the end.

Desktop Shortcuts

Once you open the remote desktop via noVNC, you'll find two shortcuts ready to go:

Shortcut What it does
OpenClaw Setup Wizard Opens the interactive onboarding wizard (openclaw onboard --skip-daemon) to configure your channels, workspace, and skills
OpenClaw Dashboard Opens Chrome with the dashboard URL and auth token pre-filled — no manual token entry needed

Requirements

  • Proxmox VE 8.x+ (x86_64 / amd64)
  • Root access on the Proxmox host
  • Internet connectivity (for downloading packages)

Configuration

The script prompts you interactively (all optional with smart auto-detection except password):

Option Default Description
VMID (next free) Container ID (auto-detected, customizable)
Password (required) Container root password (VNC uses first 8 characters)
Rootfs storage (auto-detected) Storage pool for container rootfs (local-lvm, local-zfs, etc.)
Template storage (auto-detected) Storage pool for template cache (local, etc.)
Disk size 32 GB Container root filesystem size
Memory 4096 MB RAM allocation
CPU cores 4 Number of CPU cores
VNC resolution 1920x1080 Remote desktop resolution

Everything else is auto-detected — networking (DHCP bridge vmbr0), nesting, and onboot autostart.

What the script installs

All inside the container (nothing is installed on the Proxmox host):

  • Debian 13 or 12 LXC (privileged, nested, onboot)
  • Node.js 22 + OpenClaw
  • Homebrew (preconfigured with non-root user + transparent root wrapper for OpenClaw skills)
  • LXQt desktop + TigerVNC + noVNC (with auto-scaling & no screen-blanking)
  • Google Chrome (configured for root with --no-sandbox & OpenClaw browser extension)
  • Noto Color Emoji font (for proper terminal rendering)
  • Three systemd services: openclaw-gateway, vncserver, novnc

Container Management

pct enter <VMID>       # Shell into the container
pct stop <VMID>        # Stop the container
pct start <VMID>       # Start the container
pct status <VMID>      # Check container status

Notes on the onboarding wizard

When you run the OpenClaw Setup Wizard from the desktop shortcut:

  • The shortcut automatically includes --skip-daemon so the wizard won't attempt to reinstall or overwrite the existing systemd service.
  • "SECURITY ERROR: ws:// to a non-loopback address" — This is a standard warning that the gateway uses unencrypted WebSocket over LAN. This is expected for a local setup. If you're on a trusted home or office network, it's completely fine.

As long as you see your channels connected, a Control UI URL, and an agent workspace listed at the end of the wizard, everything worked.

Troubleshooting

Service not starting?

pct exec <VMID> -- systemctl status openclaw-gateway
pct exec <VMID> -- systemctl status vncserver
pct exec <VMID> -- systemctl status novnc

Chrome extension not loading? Open Chrome, navigate to chrome://extensions, enable Developer Mode (top right toggle), then click Load unpacked and select the OpenClaw extension directory.

License

MIT License. See LICENSE for details.

Description
No description provided
Readme MIT 88 KiB
import Latest
2026-09-19 06:35:48 +00:00
Languages
Shell 100%