Il est maintenant temps d’utiliser LXD.
Tout d’abord, veillons à ce que le client puisse se connecter au démon, en exécutant :
lxc list
Le résultat devrait être similaire à :
Generating a client certificate. This may take a minute...
If this is your first time using LXD, you should also run: sudo lxd init
To start your first container, try: lxc launch ubuntu:16.04
+------+-------+------+------+------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+-------+------+------+------+-----------+
qui montre qu’il n’y a pas de conteneur en cours d’exécution.
Lançons maintenant notre premier conteneur :
lxc launch ubuntu:16.04
Le résultat devrait ressembler à ceci :
Creating stirring-beagle
Starting stirring-beagle
Cela va télécharger l’image officielle Ubuntu 16.04 LTS (Xenial Xerus) et l’utiliser comme système d’exploitation de notre conteneur.
Si un nom de conteneur n’est pas fourni (comme dans ce cas), un nom aléatoire sera généré.
Vérifions que notre conteneur est effectivement en cours d’exécution avec lxc list
:
+-----------------+---------+-----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-----------------+---------+-----------------------+------+------------+-----------+
| stirring-beagle | RUNNING | 10.147.177.171 (eth0) | | PERSISTENT | 0 |
+-----------------+---------+-----------------------+------+------------+-----------+
Nous pouvons exécuter des commandes dans le conteneur en utilisant lxc exec
:
lxc exec stirring-beagle -- ls -la
ce qui exécutera la commande fournie en tant que root
sur le conteneur ciblé :
total 7
drwx------ 3 root root 5 Jun 29 11:29 .
drwxr-xr-x 22 root root 22 Jun 19 23:52 ..
-rw-r--r-- 1 root root 3106 Oct 22 2015 .bashrc
-rw-r--r-- 1 root root 148 Aug 17 2015 .profile
drwx------ 2 root root 3 Jun 29 11:29 .ssh
L’accès au shell du conteneur peut être obtenu avec lxc exec stir-beagle /bin/bash
Notez que, puisque nous avons également configuré le réseau, le conteneur a une adresse IPv4 (comme indiqué par lxc list
) et peut également être atteint via SSH depuis l’hôte. Ceci nécessitera d’importer au préalable une clé SSH dans le conteneur.
Une fois que vous n’avez plus besoin du conteneur, il peut être arrêté :
lxc stop stirring-beagle
et détruit :
lxc delete stirring-beagle