Utilisez systemd-nspawn pour lancer des envs isolés proches d’une VM légère.
objectifs d’apprentissage
- Créer image.
- Lancer conteneur.
- Intégrer réseau simple.
prérequis
- Accès root.
- systemd-nspawn installé.
notions clés
- machinectl.
- portable services.
- bind mounts.
démonstration guidée
étape 1
Créer une image de base et démarrer un conteneur.
sudo debootstrap stable /var/lib/machines/demo http://deb.debian.org/debian/ || true
sudo systemd-nspawn -D /var/lib/machines/demo -n -b --machine=demo || true
étape 2
Gérer via machinectl et configurer un bind mount.
machinectl list 2>/dev/null || true
sudo systemd-nspawn -D /var/lib/machines/demo -n --bind=/opt/data:/mnt/data --machine=demo -- echo ok || true
exercice
Créez un portable service depuis un rootfs et lancez-le.
correction
Commandes indicatives pour portablectl.
# portablectl attach /var/lib/machines/demo --name=demo || true
# systemctl start portable-demo.service || true
quiz éclair
- Quelle commande liste les machines nspawn ?
- a) machinectl list
- b) docker ps
- c) nspawn ps