(Français) Création de container à partir de dépôts

Sorry, this entry is only available in French. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Pour des raisons de sécurité (ne pas dépendre d’une image pré-générée mais de dépôts interne), j’ai dû générer des container LXC à partir d’un dépôt spécifique.
Cette documentation sera faite sous CentOS.

Il faut d’abord récupérer les dépendances suivantes:

yum install -y yum install lxc lxc-template lxc-extra

Une fois ces dépendances récupérées, on peut regarder les fichiers templates récupérés sous /usr/share/lxc/templates/
pour voir comment sont générées les images.

Pour le template CentOS:

/usr/share/lxc/templates/lxc-centos -h
Host CPE ID from /etc/os-release: cpe:/o:centos:centos:7
usage:
    /usr/share/lxc/templates/lxc-centos -n|--name=name
        [-p|--path=path] [-c|--clean] [-R|--release=release] [-a|--arch=arch]
        [-h|--help]
Mandatory args:
  -n,--name         container name, used to as an identifier for that container from now on
Optional args:
  -p,--path         path to where the container rootfs will be created, defaults to /var/lib/lxc/name.
  -c,--clean        clean the cache
  -R,--release      CentOS release for the new container. If the host is CentOS, then it will default to the host's release.
     --fqdn         fully qualified domain name (FQDN) for DNS and system naming
     --repo         repository to use (url)
  -a,--arch         Define what arch the container will be [i686,x86_64]
  -h,--help         print this help

On voit donc que ce template peux récupérer en paramètre un dépôt, on peut donc utiliser la commande suivante pour générer le container:

lxc-create -n NOM  -t centos - --release  --repo=

Soit par exemple:

lxc-create -n centos-container -t centos - --release 7 --repo=http://fr.mirror.babylon.network/centos/7/os/x86_64/

Une fois cette étape accomplie, on pourra retrouver le container et sa configuration sous “/var/lib/lxc/NOM/”