Docker : l'essentiel
Monter un volume de données persistant (option –volume)
Exemple
Exercice
Créer un conteneur ubuntu qui monte le répertoire /etc de l’hôte dans /hack/etc.
-
Exécutez la commande suivante pour lancer un conteneur Ubuntu en montant le répertoire
/etcde l’hôte : -
Vérifiez l’accès aux fichiers
/etcde l’hôte depuis l’intérieur du conteneur en listant les fichiers du répertoire/hack/etc: -
Vous devriez voir les fichiers et répertoires présents dans
/etcde l’hôte.
Publier un port réseau (option –publish)
Exemple
Exercice
Créer un conteneur ubuntu qui exécute netcat -l -p 80 et expose le port 808<ID> sur l’hôte.
-
Remplacez
<ID>par un numéro unique (par exemple 1 si vous êtesk8s1) et lancer un conteneur Ubuntu avec Netcat : -
Vérifiez que le conteneur est en cours d’exécution :
-
Testez la connexion depuis l’hôte en utilisant Netcat :
-
Si la connexion est établie, tapez quelque chose dans le terminal et vous devriez voir la même chose dans le conteneur (vous pouvez vérifier les logs avec
docker logs netcat).
Remarque
Utilisez CtrlẐ puis bg pour mettre la commande netcat précédente en tâche de fond.
Cas pratique
Partie 1: Exécuter un conteneur
-
Démarrez un conteneur nommé
mariadbtestavec le mot de passe root pour MySQL défini surmypass: -
Vérifiez que le conteneur est en cours d’exécution :
-
Optionnellement, vous pouvez ajouter des options pour
mysqldcomme indiqué dans l’exemple ci-dessous.
Partie 2: Accéder interactivement à un conteneur
-
Accédez au conteneur
mariadbtestvia bash : -
Mettez à jour les paquets et installez vim :
-
Vérifiez que vim est installé en tapant
vimdans le terminal du conteneur.
Partie 3: Créer une image de conteneur pour exécuter un serveur web python
Création de l’image
Allez dans le répertoire de l’exercice :
Trouvez la commande pour construire le conteneur et le taguer avec le label webserver<ID>.
-
Construisez le conteneur et taguez-le avec le label
webserver<ID>(remplacez<ID>par un numéro unique) : -
Utilisez l’exemple de
Dockerfiledans le répertoire actuel et mettez-le à jour petit à petit en démarrant par le haut du fichier.
Exécution du conteneur
Analyser le programme python hello.py à l’intérieur du conteneur pour trouver le port à exporter.
-
Lancer le conteneur en tant que daemon et publier le port 800
sur l’hôte : -
Vérifiez que le conteneur est en cours d’exécution et accédez au site web
-
Supprimez le conteneur :
-
Lancez le conteneur en tant que daemon, publiez le port 800
sur l’hôte, et utilisez le fichier html stocké sur la machine hôte : -
Vérifiez que le conteneur est en cours d’exécution et que le fichier HTML est servi correctement.