Docker.md 2,87 ko
Newer Older
dm091610's avatar
dm091610 a validé
# Installation de Docker & Docker-compose

dm091610's avatar
dm091610 a validé
Dans cette partie nous allons expliquer comment nous avons procéder pour l'installation de Docker et Docker_compose.
Cette installation s'est faite sur Ubuntu à partir du terminal.
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
## Installation de Docker
io163312's avatar
io163312 a validé

dm091610's avatar
dm091610 a validé
Docker est un logiciel libre qui permet d'automatiser la gestion d'applications dans un conteneur.  

Pour installer Docker nous allons ajouter la clé publique SSH du dépôt Docker par la commande :
dm091610's avatar
dm091610 a validé

Kerroumi's avatar
Kerroumi a validé
     curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

dm091610's avatar
dm091610 a validé
Puis, nous allons vérifier la clé obtenue par cette commande :
Kerroumi's avatar
Kerroumi a validé

     sudo apt-key fingerprint 0EBFCD88
io163312's avatar
io163312 a validé
     
 ![key](img/key.png)
     
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
Ensuite nous allons ajouter Docker à la liste de notre dépôt :
Kerroumi's avatar
Kerroumi a validé

    sudo add-apt-repository    "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
Kerroumi's avatar
Kerroumi a validé
                 $(lsb_release -cs) \     
                stable
Kerroumi's avatar
Kerroumi a validé
            
dm091610's avatar
dm091610 a validé
Une mise à jour du dépôt sera effectué avec cette commande : 
dm091610's avatar
dm091610 a validé

Kerroumi's avatar
Kerroumi a validé
    sudo apt-get update
io163312's avatar
io163312 a validé
   ![UPDATE](img/UPDATE.png)
io163312's avatar
io163312 a validé

dm091610's avatar
dm091610 a validé
Enfin, nous installons le package docker-ce :
io163312's avatar
io163312 a validé

Kerroumi's avatar
Kerroumi a validé
    sudo apt-get install docker -ce
io163312's avatar
io163312 a validé
![DOCKER](img/DOCKER.png)
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
Une fois la création du conteneur faite, nous créons le volume puis nous installons le Docker_compose qui servira à lier deux images. 
dm091610's avatar
dm091610 a validé


dm091610's avatar
dm091610 a validé
## Installation de Docker-compose
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
D'abord, il faut exécuter cette commande pour télécharger la dernière version de Docker-compose :
Kerroumi's avatar
Kerroumi a validé

        sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Kerroumi's avatar
Kerroumi a validé
 ![installation1](img/installation.png)
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
Ensuite, nous appliquons des autorisations pour les exécutables avec la commande : 
Kerroumi's avatar
Kerroumi a validé

        sudo chmod +x /usr/local/bin/docker-compose
Kerroumi's avatar
Kerroumi a validé
    
Kerroumi's avatar
Kerroumi a validé
 ![auto](img/autorisation.png)
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
Enfin, nous vérifions si l'installation s'est effectuée correctement en demandant la version de Docker_compose avec la commande :
Kerroumi's avatar
Kerroumi a validé

        docker-compose --version
Kerroumi's avatar
Kerroumi a validé
        
![version](img/version.png)
Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
Maintenant, nous allons créer un fichier appelé "docker-compose.yml" dans notre répertoire de projet :
Kerroumi's avatar
Kerroumi a validé

        version: '3'
        services:
          web:
            build: .
            ports:
             - "8080:8080"
          redis:
            image: "debian"

Kerroumi's avatar
Kerroumi a validé

dm091610's avatar
dm091610 a validé
Ce fichier Compose définit deux services, "web" et "redis" : 
* Le "web" service utilise une image construite à partir de "Dockerfile" dans le répertoire actuel.
On transfére le port expose 8080 sur le conteneur au port 8080 de la machine hôte.
* Le "redis" service utilise une image "Redis" publique extraite du registre de Docker Hub.(Dans notre projet c'est "debian")
Kerroumi's avatar
Kerroumi a validé


dm091610's avatar
dm091610 a validé
À partir du répertoire de notre projet, nous démarrons notre application en exécutant : 
Kerroumi's avatar
Kerroumi a validé

    docker-compose up

Kerroumi's avatar
Kerroumi a validé
![compose](img/compose-up.png)
Kerroumi's avatar
Kerroumi a validé


dm091610's avatar
dm091610 a validé
Section suivante → [Installation de Jenkins] (https://www-apps.univ-lehavre.fr/forge/dm091610/Toturiel_Docker_Jenkins/src/Jenkins.md)