20. Comment installer Docker sur Ubuntu Server : guide étape par étape de la conteneurisation

La conteneurisation a transformé le déploiement des applications en empaquetant les logiciels dans des environnements isolés et légers qui garantissent la cohérence entre les différents systèmes. Docker sur Ubuntu Server est une combinaison puissante qui simplifie ce processus, permettant aux développeurs et aux administrateurs système de créer, livrer et exécuter des applications en toute transparence. En tant que plateforme de conteneurisation leader du secteur, Docker rationalise les flux de travail et améliore l'évolutivité du développement d'applications modernes.

Dans ce guide, nous vous guiderons à travers les étapes d'installation de Docker sur Ubuntu Server et d'exécution de votre première application conteneurisée. Que vous découvriez Docker ou que vous cherchiez à optimiser votre processus de déploiement, ce tutoriel vous aidera à démarrer avec la conteneurisation sur Ubuntu Server.


Articles précédents :

01. Introduction à Ubuntu Server – SysOSX: AI & Cloud

02. Comment configurer votre premier serveur Ubuntu : guide du débutant – SysOSX: AI & Cloud

03. Maîtriser la ligne de commande Linux pour Ubuntu Server – SysOSX: AI & Cloud

04. Gestion des utilisateurs et des autorisations sur Ubuntu Server : un guide complet – SysOSX: AI & Cloud

05. Notions de base sur les réseaux pour Ubuntu Server : un guide complet – SysOSX: AI & Cloud

06. Installation et gestion de logiciels sur Ubuntu Server : un guide complet – SysOSX: AI & Cloud

07.Application de correctifs et mise à jour d'Ubuntu Server : un guide complet – SysOSX: AI & Cloud

08. Sécurisez votre serveur Ubuntu : étapes pratiques de durcissement et de protection – SysOSX: AI & Cloud

09. Audit et journalisation du serveur Ubuntu

10. Outils de surveillance système pour Ubuntu Server : un guide complet – SysOSX: AI & Cloud

11. Journalisation centralisée pour serveur Ubuntu : un guide indispensable – SysOSX: AI & Cloud

12. Audit et conformité pour Ubuntu Server : pratiques recommandées – SysOSX: AI & Cloud

13. Configuration de votre serveur Ubuntu pour l'hébergement et les applications Web : guide ultime – SysOSX: AI & Cloud

14. Héberger plusieurs sites Web sur un seul serveur Ubuntu : conseils utiles – SysOSX: AI & Cloud

15. Gestion du stockage et des disques sur Ubuntu Server : guide simple – SysOSX: AI & Cloud

16. Configuration des services de partage de fichiers sur Ubuntu Server : un guide complet – SysOSX: AI & Cloud

17. Configuration d'un serveur de base de données sécurisé sur Ubuntu : MySQL contre MariaDB – SysOSX: AI & Cloud

18. Comment configurer et utiliser LVM sur Ubuntu Server : un guide complet – SysOSX: AI & Cloud

19. Introduction à la virtualisation avec KVM : guide du débutant pour Ubuntu Server – SysOSX: AI & Cloud



Prérequis

Avant d'installer Docker, assurez-vous que votre serveur Ubuntu répond à ces exigences :

  • Ubuntu 20.04 LTS ou version ultérieure (64 bits).
  • privilèges sudo ou un accès root.
  • Connexion internet stable pour télécharger les paquets.

Étape 1 : Installer Docker sur Ubuntu Server

Mettre à jour les paquets système
sudo apt update && sudo apt upgrade -y  

Installer les dépendances requises
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y  
Ajouter la clé GPG officielle de Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg  

Configurer le dépôt Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null  

Installer Docker Engine
sudo apt update  
sudo apt install docker-ce docker-ce-cli containerd.io -y  
Vérifier l'installation
sudo docker run hello-world  

En cas de réussite, vous verrez un message de confirmation comme ci-dessous.


Étape 2 : Gérer Docker en tant qu'utilisateur non root

Par défaut, Docker nécessite des privilèges sudo . Pour éviter de taper sudo à plusieurs reprises :

  1. Créer un groupe Docker (s'il n'existe pas) : sudo groupadd docker
  2. Ajoutez votre utilisateur au groupe: sudo usermod -aG docker $USER
  3. Appliquer les modifications: newgrp docker

Étape 3 : Exécuter votre premier conteneur

Lancez un serveur web Nginx en quelques secondes :

docker run -d -p 8080:80 --name my-nginx nginx  

  • -d: Exécuter en mode détaché.
  • -p 8080:80: Mapper le port 8080 de l'hôte vers le port 80 du conteneur.
  • --name: Attribuer un nom personnalisé au conteneur.

Vérifier l'accès:

curl http://localhost:8080  

Étape 4 : Commandes Docker essentielles

CommandeDescription
docker psLister les conteneurs en cours d'exécution
docker imagesAfficher les images téléchargées
docker stop <container-id>Arrêter un conteneur
docker rm <container-id>Supprimer un conteneur
docker rmi <image-id>Supprimer une image

Étape 5 : Automatiser les flux de travail avec Docker Compose

Pour les applications multi-conteneurs, utilisez Docker Compose:

  • Installer Docker Compose:
sudo apt install docker-compose -y
  • Créez un fichier docker-compose.yml :
version: '3'  
services:  
  web:  
    image: nginx  
    ports:  
      - "8080:80"  

  • Démarrer la pile:
docker-compose up -d

Pratiques recommandées pour Docker sur Ubuntu

  • Mettre à jour Docker régulièrement:
sudo apt update && sudo apt upgrade docker-ce -y
  • Nettoyer les ressources inutilisées:
docker system prune -a
  • Utilisez des images officielles de Docker Hub pour la sécurité et la fiabilité.

Résolution des problèmes courants

  • Autorisation refusée: Assurez-vous que votre utilisateur est dans le docker  groupe.
  • Conflits de ports: Vérifiez si d'autres services utilisent le même port.
  • Erreurs de récupération d'images: Vérifiez la connectivité internet et l'orthographe du nom de l'image.

Docker et les autres outils de conteneurisation

Bien que Docker domine le paysage de la conteneurisation, comprendre les alternatives aide à choisir l'outil adapté à votre cas d'utilisation :

OutilTypeFonctionnalités clésIdéal pour
DockerConteneurs d'applications– Accent sur l'empaquetage portable et centré sur les applications<br>- Écosystème immense (Docker Hub)<br>- CLI et Compose simplesDéveloppeurs, microservices, flux de travail CI/CD
LXDConteneurs système– Environnements complets de système d'exploitation (comme des VM légères)<br>- Intégration étroite avec LXC/Linux<br>- Gestion avancée des ressourcesInfrastructure en tant que service, remplacement de l'hyperviseur
PodmanConteneurs d'applications– Architecture sans démon<br>- Sans root par défaut<br>- CLI compatible avec DockerCharges de travail axées sur la sécurité, informatique en périphérie
containerdRuntime de conteneurs– Runtime de bas niveau (utilisé par Docker/Kubernetes)<br>- Conception minimaliste<br>- Accent sur l'évolutivitéClusters Kubernetes, déploiements à grande échelle
CRI-ORuntime Kubernetes– Optimisé pour le CRI de Kubernetes<br>- Léger et sécurisé<br>- Soutenu par Red HatClusters OpenShift/OKD, opérations natives Kubernetes
Pourquoi Docker excelle toujours
  • Adapté aux débutants: Flux de travail simplifié pour le développement et les tests d'applications.
  • Portabilité: Les conteneurs s'exécutent de manière identique sur macOS, Windows et Linux.
  • Soutien de la communauté: Plus de 8 millions d'images Docker Hub et une documentation complète.
Quand envisager des alternatives
  • LXD: Besoin d'une isolation complète du système d'exploitation (par exemple, héberger plusieurs services avec des utilisateurs distincts).
  • Podman: Priorité à la sécurité (par exemple, charges de travail gouvernementales ou de santé).
  • containerd/CRI-O: Création d'une infrastructure native Kubernetes.

Conclusion

En suivant ce guide, vous avez installé Docker sur Ubuntu Server et déployé votre première application conteneurisée. La flexibilité de Docker le rend indispensable pour DevOps, le développement cloud natif et les environnements hybrides. Explorez des fonctionnalités avancées comme Docker Swarm ou intégration de Kubernetes pour faire évoluer vos charges de travail conteneurisées.

Référence: Documentation officielle de Docker

Et ensuite ? Préparez-vous à explorer LXD pour les conteneurs Linux

Maintenant que vous maîtrisez Docker pour la conteneurisation des applications, plongeons plus profondément dans le monde des conteneurs système Linux ! Restez à l'écoute pour notre prochain guide :

“Introduction à LXD pour les conteneurs Linux : la virtualisation légère simplifiée“

2 thoughts on “20. How to Install Docker on Ubuntu Server: A Step-by-Step Guide to Containerization”

Laisser un commentaire