In June, I upgraded from a Ryzen 5 5600X with a 3060 Ti to a Ryzen 7 9800X3D with an RTX 5070 OC.
The AM5 shift required new motherboard, DDR5 memory, and a complete rebuild. I repurposed my old system as a Proxmox server. I'd been self-hosting across various i3-i5 Optiplexes for years: manageable, but tedious. They ran hot enough to make my room uncomfortable during UK summers. My old PC outperforms the entire Optiplex cluster.
(my homepage interface setup)
## What I'm Hosting
- Jellyfin (LXC): Media server. Previously ran on bare metal with limited resources.
- Tailscale (Host/LXC/VM): Secure remote access with memorable hostnames.
- Windows 11 24H2 (VM): GPU-accelerated tasks I delegate from my main system.
- Unifi (LXC): Network controller for APs and device management.
- Pterodactyl (LXC): Game server panel shared with friends over Tailscale. Default credentials stored in LXC filesystem.
- RDTClient (LXC): Real-Debrid client for downloading media.
- Radarr/Sonarr (LXC): Media management configured with RDTClient as torrent client.
- Homepage (LXC): Customizable dashboard with service monitoring and quick links. Supports custom CSS/JavaScript.
(Note: Homepage crashes after an hour with API errors if you use Tailscale addresses in configs. Use actual service addresses or set up a reconnection job)
## Requirements
- Tailscale integration across all services
- LXCs for lightweight containers (Jellyfin, Radarr, Pterodactyl)
- Windows 11 24H2 VM with GPU passthrough
- Unifi network management
## Tailscale Setup
Tailscale provides access via friendly hostnames instead of IP addresses. Install through Proxmox shell like any Linux system. LXCs follow the same process.
For unprivileged LXCs, /dev/net/tun requires explicit access. Grant this from Proxmox shell by editing /etc/pve/lxc/[id].conf:
The --ssh parameter during installation enables direct SSH access to LXCs and VMs through your Tailscale account. Essential for editing configs or accessing shells, especially through VSCode's remote SSH.
## LXC Setup
The Proxmox VE Scripts community site provides automated setup scripts. Run commands in Proxmox shell and they handle everything.
Installation is well-documented with service-specific configurations. Post-install scripts disable enterprise repositories, update nags, and other annoyances.
## Windows 11 Passthrough VM
With a 3060 Ti in the build, I set up Windows 11 for GPU-intensive tasks I can delegate from my main system.
I followed the Proxmox Forum guide but encountered issues:
- VirtIO SCSI Drivers: Windows couldn't detect the installation drive. I tried latest Windows VirtIO Drivers and switching from International to US ISOs. The fix: set SCSI controller to VirtIO in VM settings. I'd forgotten this entirely.
- GPU Not Detected: Installed drivers after boot. For NVIDIA GPUs, I use NVCleanstall to generate clean installations, then transfer to VM.
- Other Driver Issues: VirtIO ISO includes an executable in root that installs all necessary drivers automatically.
- Online Account Requirement: During OOBE, Windows forces internet connection and account creation. Bypass: open Command Prompt with Shift + F10, run
oobe\bypassnro. This restarts OOBE and allows skipping these steps.
To avoid VM detection, I used pafish to identify common VM signatures and addressed each flag. Games using EAC and BattlEye run without issues.
The GPU is shared between Windows 11 and Jellyfin. Both run simultaneously.
## Network Setup
Living with my parents and an ISP-provided router meant convincing them to set the router to bridge mode: essentially converting it to a modem so I could use my own networking equipment.
The modem connects to a temporary TP-Link router for my parents' network. They don't need full bandwidth, so this works. I've created a diagram of my network setup.
### Unifi
I'm running two APs: U6 Pro and Nano HD for better wireless coverage and a completely separate network. A dedicated gateway is currently out of budget, so I'm running Unifi Network Server in an LXC.
Setting up Unifi and adopting APs is straightforward, though considerable tuning of bands and channels was required. I'm getting around 800Mbps on my iPhone 15 Pro where my ISP provides 1Gbps symmetric.
Without a gateway, network configuration options are limited. It works for now.
Eventually, I'd like to move somewhere with better infrastructure and build something properly overkill. Once you start self-hosting, there's no going back.