Bonjour ! Suivez-vous notre série sur la création d'un système de déploiement automatique utilisant GitHub Webhook ? Comme mentionné dans le troisième article, Docker joue un rôle clé dans notre pipeline CI/CD.
Cet article est destiné à ceux qui n'ont pas encore installé Docker sur leur serveur, et fournit des instructions détaillées étape par étape pour installer Docker Engine et Docker Compose sur un serveur Ubuntu.
1. Suppression de la version antérieure (facultatif)
Si vous avez installé une version non officielle de Docker auparavant, il est conseillé de commencer par la désinstaller complètement. Exécutez la commande ci-dessous pour éliminer tous les packages existants susceptibles de provoquer des conflits.
sudo apt-get remove --purge docker docker-engine docker.io containerd runc docker-compose
Si vous n'avez pas de données importantes et souhaitez repartir sur une base propre, il est recommandé de supprimer complètement les traces de l'ancienne version de Docker.
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
- Attention : Cette commande supprimera toutes les données des conteneurs et des images, donc si vos données sont importantes, assurez-vous de les sauvegarder au préalable.
2. Configuration du dépôt officiel de Docker
Pour installer de manière fiable la dernière version de Docker, vous devez configurer le dépôt APT officiel.
# Mise à jour des packages apt
sudo apt-get update
# Installation des packages nécessaires pour configurer le dépôt officiel de Docker
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
# Ajout de la clé GPG officielle de Docker
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# Ajout du dépôt Docker au dépôt APT
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Activation du dépôt APT Docker
sudo apt-get update
3. Installation de Docker Engine
Nous allons maintenant installer Docker Engine et les outils associés.
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
La commande ci-dessus installera Docker Engine, les outils CLI, le runtime de conteneur (containerd.io
), ainsi que Docker Compose sous forme de plugin.
4. Vérification de l'installation de Docker
Pour vérifier si l'installation s'est bien déroulée, exécutez le conteneur hello-world
. Cette commande est un test simple pour vérifier que Docker fonctionne correctement.
sudo docker run hello-world
Si le message "Hello from Docker!" s'affiche, cela signifie que Docker Engine a été installé correctement.
5. Utilisation de la commande Docker sans sudo
(facultatif)
Par défaut, vous devez utiliser sudo
pour exécuter la commande docker
. Cependant, dans notre système de déploiement automatique, nous devons exécuter docker
avec un compte utilisateur normal du service systemd
, donc nous devons configurer les droits pour utiliser docker
sans sudo
.
- Ajoutez votre utilisateur actuel au groupe
docker
.
sudo usermod -aG docker $USER
-
Pour appliquer les modifications, assurez-vous de vous déconnecter et de vous reconnecter.
-
Après vous être reconnecté, vérifiez que la commande
docker run hello-world
fonctionne correctement sanssudo
.
6. Vérification de l'installation de Docker Compose
Étant donné que vous avez installé docker-compose-plugin
, aucune étape d'installation supplémentaire n'est nécessaire. Vérifiez que docker compose
est correctement installé avec la commande suivante.
docker compose version
Si un message tel que "Docker Compose version v2.x.x" s'affiche, vous avez réussi.
7. Conclusion
Votre serveur est maintenant équipé de Docker et Docker Compose. Fermez cet article et retournez à notre série principale sur la création de votre propre système de déploiement automatique utilisant GitHub Webhook (partie 3) pour passer à l'étape suivante. Une expérience passionnante vous attend, consistant à containeriser votre projet et à le déployer automatiquement via Docker !
Aucun commentaire.