Académique Documents
Professionnel Documents
Culture Documents
Quand on veut déplacer le code d’une application d’une machine à l’autre, pour éviter les bugs, on utilise
docker. Il fonctionne en créant des conteneurs. Ils permettent d’utiliser le code de l’app dans un
environnement isolé, grâce à des commandes. Les conteneurs sont légers, ils peuvent être déplacés
facilement d’un système à l’autre.
On lance une image docker en tant que conteneurs. Donc on converti le code en tant qu’image docker avec
le fichier dockerfile. Il est placé dans le répertoire de l’application (à la racine).
DockerFile :
A partir du dockerfile, on exécute docker build qui va créer l’image.
Construire l’image :
-Construire une image à partir d’un Dockerfile en spécifiant la valeur du nom du serveur (hostname) :
Lancer l’image :
Quand on lance l’image, le conteneur se créée ainsi que l’image. Un seul conteneur va être crée. L’image
docker est ce qu’on utilise pour créer un conteneur (toutes les instructions qui nous permettent de créer un
ou plusieurs conteneurs y sont stockés). Le conteneur est une instance en cours d’exécution de l’image. Il
contient les éléments nécessaires pour exécuter l’application qui est défini dans l’image docker :
Quand une image est utilisée par le conteneur, elle est dans l’état « in use » :
Explication des lignes du dockerFile :
-ARG SERVER_NAME : argument de build, le nom du serveur va etre spécifié quand on crée l’image.
On supprime le wp-content de l’image wordpress car ce répertoire contient des fichiers inutiles.
On déplace tous les fichiers qui sont dans ce répertoire /usr/src/wordpress/* et on les met à la racine du
répertoire courant (/var/www/html) :
Dans le terminal de l’image que l’on a construit puis lancé, on peut voir tous les changements du
dockerfile.
Les volumes sont des répertoires persistants, ils servent à stocker des informations même si le conteneur
est supprimé. Ils sont utiles pour partager des fichiers (entre les conteneurs ou entre le système et
conteneur). Pour lier le volume et le conteneur on utiliser l’option -v, quand on lance docker run.
A Tester
Docker compose sert à simplifier les déploiements sur des environnements multiples.
Docker compose est déjà installé sur un système Windows. Les commandes de docker compose sont
proche des commandes de docker.
Pour déployer l’ensemble des composants du site dans des conteneurs docker, on a besoin de 2 conteneurs
: mysql (base de données) et wp (système de fichiers).
On doit d’abord créer le fichier docker-compose.yml avant d’utiliser les commandes de docker compose.
Il doit être crée à la racine du projet. Toutes les ressources du projet doivent être décrite ici.
Dans le service website, on crée un conteneur qui va faire fonctionner notre site avec wp.
-Depends_on : on crée une dépendance entre 2 conteneurs. Docker va démarrer database avant de
démarrer website car wp dépends de la base de donnée pour fonctionner.
-Ports : spécifie qu’on veut exposer un port de notre machine hote vers notre conteneur pour le
rendre accessible depuis l’exterieur.
- Le conteneur sera construit via le dockerFile avant de l’éxécuter. (dans build, on a mis le chemin
vers dockerfile) :
-Définir le volume pour avoir des données persistantes : permet de stocker l’ensemble du contenu du
dossier mysql, dans un disque persistant (les données vont pouvoir être gardé en local).
-Valider la syntaxe du fichier docker compose (pour éviter les erreurs) : docker-compose config
-Voir les logs sur les différents conteneurs de façon continu : docker-compose logs -f –tail 5
Ou sinon, on peut aussi voir les logs dans docker desktop dans « view details » :
s
Kubernetes