Table des matières
LXC / LXD
GESTION DES CONTENEURS SOUS LINUX
Installation
Sous Ubuntu 14.04
apt install -t trusty-backports lxd lxd-client
Sous Ubuntu 16.04 et suivantes
apt install lxd lxd-client
Puis, pour configurer LXD :
lxd init
Conteneurs
Créer un conteneur à partir d'une image :
$ lxc init <nom_image> <nom_du_conteneur> Exemple : lxc init ubuntu:18.04 MaMachineUbuntu
Liste les conteneurs :
$ lxc list
Démarrer un conteneur :
$ lxc start <nom_du_conteneur>
Mettre un conteneur en pause :
$ lxc pause <nom_du_conteneur>
Arrêter un conteneur :
$ lxc stop <nom_du_conteneur>
Exécuter un programme dans un conteneur :
$ lxc exec <nom_du_conteneur> -- <command> Exmple pour un shell bash : lxc exec DoliCg -- /bin/bash
Images
Liste des images locales :
$ lxc image list
Liste des images disponibles ailleurs :
$ lxc image list <nom> Exemples : lxc image list ubuntu: lxc image list images:
Créer une image de conteneur :
$ lxc publish <nom_du_conteneur>[/<snapshot>] [--alias=ImageSrvUbuntu1804InstallBase] [--force] Exemple : lxc publish SrvUbuntu1804/InstallBase --alias=ImageSrvUbuntu1804InstallBase
Exporter une image vers un fichier compressé :
$ lxc image export <alias_de_l_image>
Cela créera un fichier .tar.gz de l'image dans le dossier courant.
Importer un fichier en image :
$ lxc image import <fichier.tar.gz> [--alias=ALIAS...]
Snapshots
Créer un snapshot :
$ lxc snapshot <nom_du_conteneur> [nom_du_snapshot] [--stateful]
Liste des snapshots :
$ lxc snapshot list
Restaurer un snapshot :
$ lxc restore <nom_du_conteneur> [nom_du_snapshot] [--stateful]
Gestion à distance
Permettre la connexion distante :
$ lxc config set core.https_address '[::]:8443' $ lxc config set core.trust_password <un-mot-de-passe>
Puis, depuis un autre serveur LXC :
$ lxc remote add <nom-du-serveur> <ADRESSEIP>
Pour voir les conteneurs distants :
$ lxc list <nom-du-serveur>:
On peut ensuite effectuer toutes les commandes à distance. Par exemple :
$ lxc exec <nom-du-serveur>:<nom_du_conteneur> -- bash
Chemins
/var/lib/lxd/containers /var/lib/lxd/images /var/lib/lxd/snapshots