Docker : Le guide définitif – Débutant étape par étape

Auteur : Zen et l'art de la programmation informatique

1. Introduction

Docker est un moteur de conteneur d'applications open source qui permet aux développeurs de regrouper leurs applications et dépendances dans une image légère et portable, puis de la publier sur n'importe quel serveur Linux ou Windows populaire, qui peut également être virtualisé. Les solutions basées sur des conteneurs améliorent non seulement l'efficacité de la distribution et du déploiement des services, mais, plus important encore, elles isolent l'environnement des applications et les dépendances d'exécution, rendant ainsi la maintenance des applications simple et sûre. Cet article explique comment installer et configurer Docker et utiliser certaines commandes Docker.

2. Explication des concepts et termes de base

2.1 Qu'est-ce que Docker ?

Docker est un moteur de conteneur d'applications open source qui permet aux développeurs de regrouper leurs applications et dépendances dans une image légère et portable, puis de la publier sur n'importe quel serveur Linux ou Windows populaire, qui peut également être virtualisé. Les solutions basées sur des conteneurs améliorent non seulement l'efficacité de la distribution et du déploiement des services, mais, plus important encore, elles isolent l'environnement des applications et les dépendances d'exécution, rendant ainsi la maintenance des applications simple et sûre.

2.2 Pourquoi utiliser Docker ?

De nombreuses personnes utilisent Docker, mais pourquoi ? Il y a principalement les raisons suivantes :

  1. Cohérence de l'environnement : les développeurs utilisent un environnement unifié pour déployer le code, garantissant que tous les membres exécutent le même code et le même environnement ; grâce à Docker, différents développeurs peuvent partager le même environnement, économisant ainsi les coûts matériels et améliorant l'efficacité du travail.
  2. Exploitation et maintenance automatisées : grâce au déploiement automatisé de conteneurs, les applications peuvent être rapidement déployées dans l'environnement de production, accélérant considérablement le cycle de livraison des logiciels. Dans le même temps, grâce au mode Docker Swarm, une mise à l'échelle élastique peut être effectuée pour répondre aux besoins croissants des entreprises.
  3. Architecture des microservices : dans le cadre de l'architecture des microservices, chaque service peut être utilisé comme un conteneur indépendant pour mieux gérer les ressources et les quotas d'allocation, réduire le couplage des services individuels et améliorer l'évolutivité et l'élasticité du système.
  4. Contrôle de version : étant donné que chaque conteneur est un système de fichiers isolé, le code et les dépendances peuvent être contrôlés en version pour faciliter le déploiement et la restauration.
  5. Portabilité : Docker peut fonctionner sur diverses distributions Linux grand public et fournit une interface unifiée. Cela garantit la cohérence de l’environnement de déploiement des applications.

2.3 Composition de Docker

Docker est composé de trois composants principaux :

  1. Client Docker : un outil utilisé par les utilisateurs pour exécuter des instructions de ligne de commande Docker.
  2. Hôte (ou serveur) Docker : machine qui exécute le démon Docker et les conteneurs d'applications utilisateur.
  3. Entrepôt Docker : un endroit où les fichiers image sont stockés, similaire à Docker Hub.

2.4 Fichier Docker

Dockerfile est le fichier de contenu utilisé pour définir l'image et indique à Docker comment créer l'image. Chaque Dockerfile contient une ou plusieurs instructions, indiquant à Docker où obtenir l'image de base, quels fichiers doivent être ajoutés et les commandes à exécuter après le démarrage du conteneur, etc. Ces instructions constituent une description d'une image, et plusieurs images différentes peuvent être créées via Dockerfile. Comme indiqué ci-dessous:

2.5 Image Docker

Image fait référence à un fichier binaire statique qui a été compilé et peut être exécuté localement. Il contient toutes les données et le code en cours d'exécution nécessaires, y compris le code, le runtime, les bibliothèques, les variables d'environnement, les fichiers de configuration, les scripts, etc.

2.6 Conteneur Docker

Le conteneur est l'instance en cours d'exécution de l'image et son contenu inclut tous les fichiers et répertoires de l'image. Généralement, une image peut correspondre à plusieurs conteneurs, et chaque conteneur peut être considéré comme un environnement d'exécution indépendant.

2.7 Registre Docker

Le registre est un endroit utilisé pour stocker les fichiers image, similaire à Docker Hub. En plus du registre officiel, vous pouvez également créer votre propre registre privé.

3. Installez et configurez Docker

3.1 Installer Docker CE sur Ubuntu

(1) Créer un entrepôt

La première étape consiste à mettre à jour l'index du package APT :

sudo apt update

La deuxième étape consiste à installer les packages de dépendances nécessaires :

sudo apt install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

Troisième étape, ajoutez la clé GPG :

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

La quatrième étape consiste à configurer l'entrepôt Docker :

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

La dernière étape consiste à mettre à jour l'index du package APT et à installer Docker CE :

sudo apt update && sudo apt upgrade
sudo apt install docker-ce docker-ce-cli containerd.io

(2) Vérifier l'installation

Tout d’abord, vérifiez le numéro de version de Docker :

sudo docker version

Si les informations suivantes s'affichent, l'installation a réussi :

Client:
 Version:           20.10.7
 API version:       1.41
 Go version:        go1.13.8
 Git commit:        20.10.7-0ubuntu1~20.04.1
 Built:             Wed Aug  4 22:52:58 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server:
 Engine:
  Version:          20.10.7
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.8
  Git commit:       20.10.7-0ubuntu1~20.04.1
  Built:            Wed Aug  4 19:07:47 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.5.2-0ubuntu1~20.04.2
  GitCommit:        
 runc:
  Version:          1.0.0~rc95-0ubuntu1~20.04.2
  GitCommit:        

3.2 Installer Docker CE sur CentOS

(1) Créer un entrepôt

La première étape consiste à configurer la source YUM :

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

La deuxième étape consiste à installer Docker CE :

sudo yum update -y && sudo yum install -y docker-ce docker-ce-cli containerd.io

(2) Vérifier l'installation

Tout d’abord, vérifiez le numéro de version de Docker :

sudo docker version

Si les informations suivantes s'affichent, l'installation a réussi :

Client: Docker Engine - Community
 Version:           20.10.7
 API version:       1.41
 Go version:        go1.13.15
 Git commit:        f0df350
 Built:             Wed Jun  2 11:56:40 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.7
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       b0f5bc3
  Built:            Wed Jun  2 11:54:58 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.6
  GitCommit:        d71fcd7d8303cbf684402823e425e9dd2e99285d
 runc:
  Version:          1.0.0-rc95
  GitCommit:        b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

3.3 Configurer l'accélérateur d'images

En raison de l'environnement réseau national particulier, l'extraction de l'image Docker est très lente, voire impossible à télécharger. Dans ce cas, vous pouvez utiliser un accélérateur d'image domestique pour augmenter la vitesse de téléchargement.

Il existe actuellement deux principaux accélérateurs d’image en Chine :

Entrez la commande suivante dans le terminal pour configurer l'accélérateur d'image :

# 替换$username为你的用户名,$accelerator为镜像加速器地址
echo '{"registry-mirrors": ["https://$username.mirror.aliyuncs.com", "$accelerator"]}'> /etc/docker/daemon.json

Rechargez le fichier de configuration :

sudo systemctl daemon-reload && sudo systemctl restart docker

Guess you like

Origin blog.csdn.net/universsky2015/article/details/133565976