--- tags: [infrastructure, server, proxmox, homelab, personal] updated: 2026-04-24 --- # pve — Proxmox VE Homelab > SSH alias: `pve` → `root@192.168.1.48:22` > Key: `~/.ssh/id_ed25519` > Web UI: https://192.168.1.48:8006 ## Overview Home Proxmox VE server. Runs VMs and LXC containers for personal projects, self-hosted services, and homelab experimentation. Connected via Tailscale for remote access. - **Platform**: Bare-metal (home server) - **OS**: Proxmox VE 9.1.8 (kernel 6.17.13-2-pve) — security update 2026-04-24: pve-manager 9.1-8, libngtcp2-quic0, libproxmox-rs-perl, cluster libs - **IP**: 192.168.1.48 (LAN) - **Tailscale**: 100.122.192.8 (accessible remotely) - **CPU/RAM**: Not audited (runs 8 containers + 1 VM comfortably) ## Storage | Pool | Type | Total | Used | Available | % | |------|------|-------|------|-----------|---| | data-hdd | LVM-thin | 5.6 TB | 31 GB | 5.5 TB | 0.55% | | local | dir | 68 GB | 6.6 GB | 58 GB | 9.5% | | local-lvm | LVM-thin | 141 GB | 100 GB | 41 GB | 71% | | usb-backup | dir | 916 GB | 110 GB | 759 GB | 12% | ⚠ **local-lvm is 71% full** — watch this pool ## Virtual Machines | VMID | Name | Status | RAM | Disk | |------|------|--------|-----|------| | 200 | kali-linux | running | 8 GB | 60 GB | ## LXC Containers | VMID | Name | Status | Purpose | |------|------|--------|---------| | 100 | ollama | running | Local LLM inference (Ollama) | | 101 | adguard | running | DNS ad-blocking (AdGuard Home) | | 102 | docker | running | General Docker container host | | 103 | beszel | running | Server monitoring dashboard | | 104 | vaultwarden | running | Bitwarden-compatible password manager | | 105 | immich | running | Self-hosted photo management | | 107 | homarr | running | Homepage / service dashboard | | 110 | uptimekuma | running | Uptime monitoring | ## Host Ports | Port | Service | |------|---------| | 8006 | Proxmox Web UI (HTTPS) | | 3128 | SPICE proxy | | 22 | SSH | | 45876 | Beszel agent | | 9101 | node_exporter (Prometheus metrics) | ## Key Services on Host - **Tailscale** — remote access overlay (100.122.192.8) - **Beszel agent** — system monitoring - **node_exporter** — Prometheus metrics - **Postfix** — local mail relay ## Container Details ### CT 100 — ollama - Runs Ollama server for local LLM inference - Access models from LAN ### CT 101 — adguard - AdGuard Home DNS server - Likely set as LAN DNS resolver (192.168.1.x) ### CT 102 — docker - General-purpose Docker host for misc containers - Check inside with `pct exec 102 -- docker ps` - **17 containers running**, all with `unless-stopped`/`always` restart policies - **Docker data-root**: `/mnt/data/docker` (300 GB data-hdd mount) - Config: `/etc/docker/daemon.json` → `{"data-root": "/mnt/data/docker"}` - Moved from `/var/lib/docker` on 2026-04-24 - **System disk**: 51% used (was 88% before Docker data-root migration — resolved ✅ 2026-04-24) ### CT 103 — beszel - Monitoring hub for all containers/VMs - Pulls metrics from beszel agents running on each host ### CT 104 — vaultwarden - Self-hosted Bitwarden password manager - Separate from aimpress VPS vaultwarden ### CT 105 — immich - Photo management (Google Photos alternative) - **PostgreSQL data dir**: `/opt/immich/data/postgresql` (on data-hdd) - Symlink at original path: `/var/lib/postgresql` → `/opt/immich/data/postgresql` - Migrated from `/var/lib/postgresql` on 2026-04-24 - **Immich cache**: `/opt/immich/data/cache` on data-hdd, symlinked from `/opt/immich/cache` - **Upload dir**: `/opt/immich/upload` — existing 200 GB data-hdd mount (unchanged) - **System disk**: 62% used (was 82% before migration — resolved ✅ 2026-04-24) ### CT 107 — homarr - Dashboard at http://192.168.1.224:7575 (or configured port) - Shows all services, integrates with Docker/Proxmox ### CT 110 — uptimekuma - Monitors all services for uptime - Web UI — configure webhooks to monitoring-agent for alerts - ⚠ Pending: add Webhook to `http://192.168.1.225:9111/alert/uptime-kuma` ## Useful Commands ```bash # List VMs and containers ssh pve "qm list && pct list" # Execute command in container ssh pve "pct exec 102 -- docker ps" # Start/stop container ssh pve "pct start 110" ssh pve "pct stop 110" # Check storage ssh pve "pvesm status" ``` ## Key Takeaways - **local-lvm at 71%** — clean up unused volumes or expand before hitting 85% - Kali Linux VM (200) running — for security/pentesting - Ollama (CT 100) = local LLM inference, no API key needed - AdGuard (CT 101) = DNS for LAN — changing it affects all home devices - All containers running — healthy cluster - Tailscale enables access from anywhere without port forwarding - CT 102 Docker data moved to data-hdd — system disk at 51% (healthy) - CT 105 PostgreSQL/Immich data moved to data-hdd — system disk at 68% (healthy) ## Related - [[wiki/homelab/_index|homelab/]] — full homelab docs - [[wiki/infrastructure/server-aimpress|server-aimpress]] - [[wiki/infrastructure/ssh-aliases|ssh-aliases]]