Faire fonctionner Docker dans un CT (LXC) Proxmox
Par défaut, les conteneurs LXC sur Proxmox VE ne sont pas conçus pour exécuter Docker, car Docker lui-même utilise des fonctionnalités proches de la virtualisation et nécessite certains privilèges supplémentaires.
Cependant, il est tout à fait possible d’adapter un CT afin d’y installer et faire tourner Docker. Voici la procédure.
1. Préparer le conteneur LXC
- Créez un CT basé sur une distribution Linux compatible Docker (Ubuntu 22.04 ou Debian 12 conseillés).
- Donnez-lui suffisamment de ressources (CPU/RAM).
- Activez l’option « unprivileged » ou « privileged » selon votre préférence (Docker fonctionne mieux en privileged).
2. Modifier la configuration du CT
Sur le nœud Proxmox, éditez le fichier de configuration du CT :
nano /etc/pve/lxc/<ID_CT>.conf
Ajoutez (ou vérifiez) les options suivantes :
# Autoriser Docker
features: nesting=1,keyctl=1
# (Optionnel mais souvent nécessaire pour certains conteneurs Docker)
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
⚠️
lxc.cap.drop:
vide supprime la restriction par défaut et donne plus de privilèges au CT. À utiliser avec précaution.
Enregistrez puis redémarrez le conteneur :
pct restart <ID_CT>
3. Installer Docker dans le CT
Connectez-vous au CT :
pct enter <ID_CT>
Ensuite, installez Docker (exemple pour Debian/Ubuntu) :
apt update
apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
# Ajouter la clé GPG officielle
curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | gpg --dearmor -o /usr/share/keyrings/docker.gpg
# Ajouter le dépôt Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
# Installer Docker
apt update
apt install -y docker-ce docker-ce-cli containerd.io
4. Tester Docker
Vérifiez que Docker fonctionne :
docker run hello-world
Si tout est correctement configuré, vous verrez le message de bienvenue de Docker.
5. Conseils et bonnes pratiques
- Sécurité : un CT avec Docker est plus proche d’une VM au niveau des permissions. Si la sécurité est critique, préférez utiliser une VM KVM.
- Réseau : selon vos besoins, configurez un bridge réseau ou utilisez le mode NAT de Proxmox.
- Persistance : montez vos volumes de stockage Proxmox dans le CT pour que vos conteneurs Docker persistent.
✅ Avec cette configuration, vous pouvez exécuter Docker (et même Docker Compose) dans un CT Proxmox sans avoir à créer de VM classique.
Share this content:
Laisser un commentaire