This commit is contained in:
parent
8c3ea223e5
commit
25aef1af17
54 changed files with 123 additions and 122 deletions
|
|
@ -13,7 +13,7 @@ Consulter les journaux
|
|||
----------------------
|
||||
|
||||
La première étape consiste bien souvent à regarder ce que le conteneur affiche
|
||||
sur ses sorties standard et d'erreur. Lorsqu'il est lancé en monde *daemon*, il
|
||||
sur ses sorties standard et d'erreur. Lorsqu'il est lancé en mode *daemon*, il
|
||||
convient d'utiliser la commande :
|
||||
|
||||
<div lang="en-US">
|
||||
|
|
@ -76,7 +76,7 @@ docker container top cntr_name
|
|||
```
|
||||
</div>
|
||||
|
||||
Cela liste tous les processus rattaché au conteneur nommé : à la fois les
|
||||
Cela liste tous les processus rattachés au conteneur nommé : à la fois les
|
||||
processus démarrés par le `run`, mais également les éventuels processus
|
||||
rattachés par `exec`.
|
||||
|
||||
|
|
|
|||
|
|
@ -38,9 +38,9 @@ ici, puisque c'est ce volume qui assure la persistance des images.
|
|||
|
||||
:::::
|
||||
|
||||
Nos images sont bien persistantes d'une instance à l'autre de notre contenu.
|
||||
Nos images sont bien persistantes d'une instance à l'autre de notre conteneur.
|
||||
|
||||
Nous voici prêt à déployer en production notre service, sans crainte de perdre
|
||||
Nous voici prêts à déployer en production notre service, sans crainte de perdre
|
||||
les jolies contributions. Mais... est-ce que ce sera suffisant pour répondre aux
|
||||
milliers de visiteurs attendus ?
|
||||
|
||||
|
|
|
|||
|
|
@ -42,16 +42,16 @@ docker container run --publish 8080:8080 registry.nemunai.re/youp0m
|
|||
</div>
|
||||
|
||||
Cet argument va faire effectuer à Docker une étape supplémentaire lorsqu'il
|
||||
démarerra le conteneur : il va devoir mettre en place une redirection du port
|
||||
démarrera le conteneur : il va devoir mettre en place une redirection du port
|
||||
de notre système local (8080) vers le port 8080 du conteneur.
|
||||
|
||||
{ width=70% }
|
||||
|
||||
::::: {.question}
|
||||
|
||||
#### Peut-on démarrer plusieurs conteurs utilisant le même port de notre système local ? {-}
|
||||
#### Peut-on démarrer plusieurs conteneurs utilisant le même port de notre système local ? {-}
|
||||
|
||||
Si l'on essai de lancer deux fois la commande de notre dernier `run`, nous
|
||||
Si l'on essaie de lancer deux fois la commande de notre dernier `run`, nous
|
||||
obtenons l'erreur suivante :
|
||||
|
||||
<div lang="en-US">
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ Le daemon assemble ensuite l'image et met en place les différents éléments
|
|||
d'isolation pour préparer l'exécution de notre conteneur.
|
||||
|
||||
Enfin, il lance la commande qui sera le premier processus du conteneur. Cette
|
||||
commande fait parti des métadonnées de l'image. Le processus ainsi lancé est un
|
||||
commande fait partie des métadonnées de l'image. Le processus ainsi lancé est un
|
||||
peu particulier : il obtient les mêmes caractéristiques que le PID 1 de notre
|
||||
système ('init').
|
||||
|
||||
|
|
@ -57,7 +57,7 @@ afficher beaucoup de contenu pour faire son choix. Aussi, il est souvent plus
|
|||
pratique d'aller explorer les registres en passant directement par leur interface
|
||||
web.
|
||||
|
||||
Vous trouverez forcément votre bonheur parmi les images proposées par les deux
|
||||
Vous trouverez forcément votre bonheur parmi les images proposées par les trois
|
||||
principaux registres :
|
||||
|
||||
- <https://hub.docker.com/>
|
||||
|
|
@ -358,7 +358,7 @@ c'est toujours le daemon qui exécute directement les commandes et gère les
|
|||
entrées et sorties standards et d'erreur. Avec l'option `--interactive`, on
|
||||
s'assure que l'entrée standard ne sera pas fermée (`close(2)`). Nous demandons
|
||||
également l'allocation d'un TTY, sans quoi `bash` ne se lancera pas en mode
|
||||
interractif[^bashnointer].
|
||||
interactif[^bashnointer].
|
||||
|
||||
[^bashnointer]: Mais il sera possible de l'utiliser sans allouer de TTY, comme
|
||||
dans cet exemple :
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ distribution :
|
|||
|
||||
### Sous Windows et macOS
|
||||
|
||||
Bien que les fonctionnalités de contenerisation de Docker que nous utiliserons
|
||||
Bien que les fonctionnalités de conteneurisation de Docker que nous utiliserons
|
||||
ne soient disponibles que sous Linux, il est possible d'utiliser Docker de
|
||||
manière déportée : le daemon Docker tournera dans une machine virtuelle Linux,
|
||||
mais vous pourrez interagir avec lui via votre ligne de commande habituelle.
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ indiquent que le service cherche à se connecter à une base de données. Il va
|
|||
donc falloir lier notre interface d'administration à [un conteneur
|
||||
MariaDB](https://hub.docker.com/_/mariadb).
|
||||
|
||||
Ne vous embêtez pas avec les mots de passes des services, initialisez la base
|
||||
Ne vous embêtez pas avec les mots de passe des services, initialisez la base
|
||||
de données avec le nom d'utilisateur et le mot de passe par défaut. Vous les
|
||||
obtiendrez en lisant la documentation de l'image fic-admin :
|
||||
<https://hub.docker.com/r/nemunaire/fic-admin/>
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@
|
|||
Stockage de données applicatives
|
||||
================================
|
||||
|
||||
Il est généralement toujours possible d'écrire dans le système de fichier de
|
||||
Il est généralement toujours possible d'écrire dans le système de fichiers de
|
||||
notre conteneur. (Cela n'affecte pas l'image, chaque conteneur est démarré à
|
||||
partir de l'image originale.) Cependant, il n'est pas recommandé de chercher à
|
||||
stocker des données ainsi. En effet, il n'est pas aisé de récupérer ces données
|
||||
une fois l'exécution du conteneur terminée ; les données peuvent même être
|
||||
détruite si on a lancé le conteneur avec l'option `--rm`.
|
||||
détruites si on a lancé le conteneur avec l'option `--rm`.
|
||||
|
||||
Docker met donc à notre disposition plusieurs mécanismes pour que les données
|
||||
de nos applications persistent et soient prêtes à être migrées d'un conteneur à
|
||||
|
|
|
|||
|
|
@ -3,14 +3,14 @@ Composition de Docker
|
|||
|
||||
Docker est une suite d'outils de haut niveau, permettant d'utiliser des
|
||||
*conteneurs*. Le projet en lui-même utilise de nombreuses dépendances,
|
||||
originellement développées par l'entreprise Docker Inc., puis laissé dans le
|
||||
originellement développées par l'entreprise Docker Inc., puis laissées dans le
|
||||
domaine public lors des efforts de standardisation en 2015.
|
||||
|
||||
Commençons par planter le décor, en détaillant les principes de base de Docker.
|
||||
|
||||
### Séparation des compétences
|
||||
|
||||
Le projet s'article autour d'un daemon lancé au démarrage de la machine, avec
|
||||
Le projet s'articule autour d'un daemon lancé au démarrage de la machine, avec
|
||||
lequel on interagit via un client (le programme `docker`). La communication
|
||||
entre le daemon et le client s'effectuant sur une API REST généralement au
|
||||
travers d'une socket.
|
||||
|
|
@ -71,7 +71,7 @@ de nombreuses directions, chacun voulant tirer la couverture vers soi, et
|
|||
l'équipe maintenant le projet a parfois eu du mal à arbitrer les bonnes choses
|
||||
à ajouter ou non au projet.
|
||||
|
||||
Afin de pallier aux besoins complémentaires, parfois accessoires, parfois
|
||||
Afin de pallier les besoins complémentaires, parfois accessoires, parfois
|
||||
salvateurs, un système de plugins a été intégré. Il permet d'appeler d'autres
|
||||
programmes comme s'il s'agissait de composants de Docker.
|
||||
|
||||
|
|
@ -85,7 +85,7 @@ utilisateurs de notre machine ou dans `$HOME/.docker/` si l'on veut l'installer
|
|||
seulement pour nous.
|
||||
|
||||
Par exemple, les plugins ajoutant des commandes iront dans
|
||||
`$HOME/.docker/cli-plugins`. Par exemple, si l'on souhaite pouvoir disposer de
|
||||
`$HOME/.docker/cli-plugins`. Si l'on souhaite pouvoir disposer de
|
||||
la commande `docker compose`, on téléchargera le plugin vers l'emplacement :
|
||||
`$HOME/.docker/cli-plugins/docker-compose`.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue