claude-memory/graph/code-patterns/pattern-proxmox-lxc-creation-for-headless-game-servers-ccb2b5.md

1.3 KiB

id type title tags importance confidence created updated
ccb2b5a4-a9bb-4f8f-9367-d74713ab2415 code_pattern Pattern: Proxmox LXC Creation for Headless Game Servers
proxmox
lxc
game-server
pattern
steamcmd
claude-home
0.7 0.8 2026-03-05T03:43:01.292934+00:00 2026-03-05T03:43:01.292934+00:00

Proxmox LXC Game Server Pattern

Container Setup

  • Unprivileged container with nesting=1
  • No Docker needed, so no keyctl/apparmor hacks required
  • Template: Debian 12

SteamCMD Setup

dpkg --add-architecture i386
apt install lib32gcc-s1 steamcmd

User

  • Create dedicated steam user for server process
  • Run SteamCMD and server as steam, not root

SteamCMD Invocation Pattern

steamcmd +@sSteamCmdForcePlatformType linux +login anonymous \
  +force_install_dir /home/steam/server \
  +app_update <APP_ID> validate +quit

Systemd Service Pattern

[Service]
Type=simple
User=steam
Restart=on-failure
ExecStart=/home/steam/server/start.sh

DNS

  • Use local gateway/Pi-hole (e.g. 10.10.0.1) not 8.8.8.8
  • Set via: pct set <CTID> --nameserver 10.10.0.1

GPU

  • No GPU passthrough needed for headless game servers

Reference

  • Existing LXC creation script: gaming/scripts/lxc-docker-create.sh (adapt, minus Docker parts)