Virtualizzazione leggera con Linux Containers
I container LXC condividono il kernel dell'host, consumano meno risorse delle VM e si avviano in pochi secondi. Perfetti per servizi singoli.
1. Scaricare template
# Da CLI
pveam update
pveam available --section system
pveam download local debian-12-standard_12.2-1_amd64.tar.zst
2. Creare container
pct create 300 local:vztmpl/debian-12-standard_12.2-1_amd64.tar.zst \
--hostname pihole \
--memory 512 \
--cores 1 \
--net0 name=eth0,bridge=vmbr0,ip=192.168.1.53/24,gw=192.168.1.1 \
--storage local-lvm \
--rootfs local-lvm:8 \
--unprivileged 1 \
--features nesting=1
3. Operazioni base
pct start 300
pct enter 300 # shell interattiva
pct exec 300 -- apt update
pct stop 300
pct destroy 300
4. Privilegiato vs Unprivilegiato
- Unprivileged (default): più sicuro, UID mappati, consigliato
- Privileged: necessario per NFS mount, accesso diretto a device
5. Bind mount (condividere cartelle host)
# Nel file di configurazione del container
# /etc/pve/lxc/300.conf
mp0: /srv/data,mp=/mnt/data
6. Quando usare LXC vs VM
- LXC: servizi Linux singoli (DNS, web, DB), basso overhead
- VM: kernel diverso, Windows, GPU passthrough, isolamento totale