//nbkelley /homelab

Web Server Architecture on Proxmox#

What Was Established#

High-level architectural strategies for deploying web development environments on Proxmox, focusing on balancing isolation with resource efficiency.

Key Decisions#

  • LXC for Services: Use LXC containers for lightweight, single-purpose services (e.g., Nginx, Databases) to minimize overhead.
  • VM for Complex Workloads: Use full VMs when running Docker, Kubernetes, or when custom kernel modules are required.
  • Reverse Proxy Pattern: Always use a reverse proxy (Nginx Proxy Manager, Traefik, or C/Caddy) to handle SSL termination and route traffic to multiple internal services.
  • Database Isolation: Separate databases into their own containers/VMs to improve security and facilitate independent backups.

Current Configuration#

Networking Patterns#

  • Bridge Mode: Default vmbr0 for services requiring LAN access.
  • Internal Network: Use secondary bridges (e.g., vmbr1) for isolated communication between web servers and databases.

Storage Patterns#

  • Local-LVM: Preferred for high-performance VM/container disks.
  • Directory Storage: Suitable for container volumes and simpler storage needs.

Historical Notes#

This architecture plan was established in March 2025. The preference for LXCs over VMs for simple web services was a primary driver.

Open Questions#

  • Integration of CI/CD pipelines (Jenkins/GitLab) into the automated deployment workflow.

Nginx vs Apache for Static Hosting, Web Server Stack (Nginx + Apache)

Sources#

  • ingested/chats/019-Setting Up Web Server on Proxmox Guide.md Setting Up Web Server on Proxmox Guide · ingested/chats/Setting_Up_Web_Server_on_Proxmox_Guide