Créer et gérer des conteneurs LXC sous Proxmox VE : différences avec les VMs, création, gestion réseau et templates.
Proxmox VE installé et fonctionnel. Accès root sur Proxmox.
| Critère | VM (KVM) | Conteneur LXC |
|---|---|---|
| Isolation | Complète — noyau propre | Partielle — partage le noyau de l'hôte |
| Démarrage | 30-60 secondes | 1-3 secondes |
| Ressources | RAM/CPU dédiés (overhead important) | Léger — partagés avec l'hôte |
| OS supportés | Windows, Linux, BSD, tout OS | Linux uniquement |
| Sécurité | Meilleure isolation | Moins isolé (noyau partagé) |
| Usage idéal | Windows Server, isolation forte, tests OS | Services Linux : web, DNS, DHCP, proxy |
# Mettre à jour la liste des templates disponibles pveam update # Lister les templates disponibles pveam available | grep debian pveam available | grep ubuntu # Télécharger un template (Debian 13) pveam download local debian-13-standard_13.0-1_amd64.tar.zst # Lister les templates téléchargés pveam list local
Ou via l'interface web : Noeud > local > CT Templates > Templates → Sélectionner debian-13-standard → Download
| Étape | Paramètre | Valeur recommandée |
|---|---|---|
| General | CT ID / Hostname | 200 / debian-web |
| General | Password | Mot de passe root du conteneur |
| Template | Template | debian-13-standard_13.0-1_amd64.tar.zst |
| Disks | Disk size | 8 Go minimum |
| CPU | Cores | 1-2 |
| Memory | RAM | 512 Mo – 1024 Mo (conteneur léger) |
| Network | Bridge | vmbr0 |
| Network | IPv4 | DHCP ou Static (192.168.1.50/24) |
| DNS | DNS servers | 192.168.1.10 ou 8.8.8.8 |
pct create 200 local:vztmpl/debian-13-standard_13.0-1_amd64.tar.zst \ --hostname debian-web \ --memory 1024 \ --cores 2 \ --net0 name=eth0,bridge=vmbr0,ip=192.168.1.50/24,gw=192.168.1.1 \ --rootfs local-lvm:8 \ --password MonMotDePasse \ --unprivileged 1 \ --start 1
| Commande | Action |
|---|---|
| pct list | Lister tous les conteneurs |
| pct start 200 | Démarrer le conteneur 200 |
| pct stop 200 | Arrêter le conteneur 200 |
| pct shutdown 200 | Arrêt propre |
| pct status 200 | Voir l'état |
| pct enter 200 | Ouvrir un shell dans le conteneur |
| pct exec 200 -- bash | Exécuter bash dans le conteneur |
| pct config 200 | Voir la configuration |
| pct snapshot 200 snap1 | Créer un snapshot |
| pct destroy 200 | Supprimer définitivement |
# Entrer dans le conteneur et installer Apache2 pct enter 200 apt update && apt install apache2 -y systemctl enable --now apache2 exit # Exécuter une commande sans entrer dans le conteneur pct exec 200 -- systemctl status apache2
| Type | Description | Usage |
|---|---|---|
| Non privilégié (--unprivileged 1) | UID/GID mappés — root dans le conteneur = utilisateur non-root sur l'hôte. Plus sécurisé. | Usage standard recommandé |
| Privilégié (--unprivileged 0) | root dans le conteneur = root sur l'hôte. Moins sécurisé mais parfois nécessaire. | Services nécessitant accès matériel ou montages NFS |
✅ Réponse : Un conteneur partage le noyau de l'hôte, une VM a son propre noyau
✅ Réponse : pct enter 200
✅ Réponse : Un template LXC pour créer des conteneurs
✅ Réponse : Un conteneur où root est mappé à un utilisateur non-root sur l'hôte
✅ Réponse : pveam list local