55 lines
1.2 KiB
Markdown
55 lines
1.2 KiB
Markdown
# Infra avancée
|
|
|
|
## Cours
|
|
|
|
### Contenerisation
|
|
|
|
- Namespace : les processus ne peuvent pas voir les ressources utilisées par l'hôte ou ses congénères
|
|
- cgroups : contrôle des ressources allouées à un processus
|
|
|
|
#### Solutions :
|
|
|
|
- Docker / Podman
|
|
- OpenVZ
|
|
- Les zones (Solaris)
|
|
- Les jails (FreeBSD)
|
|
- LXC
|
|
|
|
### LXC
|
|
|
|
```
|
|
# Avec interactivté
|
|
sudo lxc-create -n NOM_CONTENEUR -t download
|
|
|
|
# Sans interactivité (pour script)
|
|
sudo lxc-create --template=download --name NOM_CONTENEUR -- --dist NOM_DISTRIBUTION --release NUMERO_VERSION --arch amd64
|
|
```
|
|
|
|
```
|
|
# Démarrer
|
|
sudo lxc-start -n NOM_CONTENEUR
|
|
|
|
# Entrer dans un conteneur
|
|
sudo lxc-attach -n NOM_CONTENEUR
|
|
|
|
# Stopper
|
|
sudo lxc-
|
|
|
|
# Supprimer
|
|
sudo lxc-destroy -n NOM_CONTENEUR
|
|
|
|
# Lister
|
|
sudo lxc-ls (--active, --running, --frozen)
|
|
|
|
# Info sur conteneur précis
|
|
sudo lxc-info -n NOM_CONTENEUR
|
|
```
|
|
|
|
Fichier config du conteneur (/var/lib/lxc/xxx) :
|
|
```
|
|
# Méthode 1 : Montage d'un dossier de l'hôte
|
|
lxc.mount.entry = /dossier_hote dossier_interne_conteneur none bind,create=dir 0 0
|
|
|
|
# Méthode 2 : Montage d'un disque entier ou partition de l'hôte
|
|
lxc.mount.entry = /dev/disque_ou_partition dossier_interne_conteneur FS_type defaults,create=dir 0 0
|
|
``` |