Désactiver le préchargeur
Explorez, Apprenez et Maîtrisez

Documentation et Tutoriels - Hébergement Web Caramania.Ca

avec Nos Documentation et Tutoriels

Découvrez notre vaste bibliothèque de documentation et de tutoriels conçus pour vous aider à tirer le meilleur parti des services Caramania.Ca. Que vous soyez un débutant cherchant à configurer votre premier site web ou un utilisateur avancé désireux d'explorer des fonctionnalités plus complexes, nos guides pas à pas vous accompagneront à chaque étape. Simplifiez la gestion de vos services, trouvez des solutions rapides à vos problèmes, et approfondissez vos connaissances grâce à notre centre de ressources complet.

Documentation / Tutoriels Linux / Conteneurs / Installer Docker sur Ubuntu, Debian et AlmaLinux
Bahanos
09/01/2025
Débutant
15 minutes

Prérequis

  • Un VPS ou serveur avec Ubuntu 22.04/24.04, Debian 11/12 ou AlmaLinux 9
  • Accès root ou sudo

Docker permet de déployer des applications dans des conteneurs isolés. Ce guide couvre l'installation de Docker Engine et Docker Compose sur Ubuntu, Debian et AlmaLinux/Rocky Linux.

1. Supprimer les anciennes versions

Nettoyer les anciennes installations (Ubuntu/Debian)
# Supprimer les anciennes versions (si présentes)
apt remove docker docker-engine docker.io containerd runc -y
Nettoyer les anciennes installations (AlmaLinux/Rocky Linux)
# Supprimer les anciennes versions (si présentes)
dnf remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine podman runc

2. Installer les dépendances

Prérequis (Ubuntu/Debian)
# Mettre à jour les paquets
apt update

# Installer les dépendances
apt install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
Prérequis (AlmaLinux/Rocky Linux)
# Mettre à jour les paquets
dnf update -y

# Installer les dépendances
dnf install -y \
    dnf-plugins-core \
    ca-certificates \
    curl \
    gnupg2

3. Ajouter le dépôt Docker officiel

Pour Ubuntu

Ajouter le dépôt Docker (Ubuntu)
# Ajouter la clé GPG officielle
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# Ajouter le dépôt
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" | tee /etc/apt/sources.list.d/docker.list > /dev/null

Pour Debian

Ajouter le dépôt Docker (Debian)
# Ajouter la clé GPG officielle
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

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

Pour AlmaLinux/Rocky Linux

Ajouter le dépôt Docker (AlmaLinux/Rocky Linux)
# Ajouter le dépôt Docker officiel
dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo

4. Installer Docker Engine

Installation (Ubuntu/Debian)
# Mettre à jour les paquets avec le nouveau dépôt
apt update

# Installer Docker
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# Vérifier l'installation
docker --version
docker compose version
Installation (AlmaLinux/Rocky Linux)
# Installer Docker
dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

# Vérifier l'installation
docker --version
docker compose version

5. Configurer Docker pour un utilisateur non-root

Pour utiliser Docker sans sudo :

Ajouter votre utilisateur au groupe docker
# Ajouter l'utilisateur actuel au groupe docker
usermod -aG docker $USER

# Ou pour un utilisateur spécifique
usermod -aG docker votre_utilisateur

# Appliquer les changements (ou déconnectez-vous et reconnectez-vous)
newgrp docker

# Tester sans sudo
docker run hello-world
Sécurité

Les utilisateurs du groupe docker ont des privilèges équivalents à root. N'ajoutez que les utilisateurs de confiance à ce groupe.

6. Configurer le démarrage automatique

Activer Docker au démarrage
# Activer Docker au démarrage
systemctl enable docker
systemctl enable containerd

# Vérifier le statut
systemctl status docker

7. Commandes Docker essentielles

Commandes de base
# Lister les conteneurs en cours d'exécution
docker ps

# Lister tous les conteneurs (y compris arrêtés)
docker ps -a

# Lister les images
docker images

# Télécharger une image
docker pull nginx

# Lancer un conteneur
docker run -d --name mon-nginx -p 80:80 nginx

# Arrêter un conteneur
docker stop mon-nginx

# Démarrer un conteneur arrêté
docker start mon-nginx

# Supprimer un conteneur
docker rm mon-nginx

# Supprimer une image
docker rmi nginx

# Voir les logs d'un conteneur
docker logs mon-nginx
docker logs -f mon-nginx  # En temps réel

# Exécuter une commande dans un conteneur
docker exec -it mon-nginx bash

8. Docker Compose

Docker Compose permet de gérer des applications multi-conteneurs avec un fichier YAML.

Exemple docker-compose.yml
version: '3.8'

services:
  web:
    image: nginx:latest
    ports:
      - "80:80"
    volumes:
      - ./html:/usr/share/nginx/html
    restart: unless-stopped

  db:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: motdepasse_securise
      MYSQL_DATABASE: mabase
      MYSQL_USER: utilisateur
      MYSQL_PASSWORD: motdepasse_user
    volumes:
      - db_data:/var/lib/mysql
    restart: unless-stopped

volumes:
  db_data:
Commandes Docker Compose
# Démarrer les services (en arrière-plan)
docker compose up -d

# Arrêter les services
docker compose down

# Voir les logs
docker compose logs
docker compose logs -f  # En temps réel

# Reconstruire les images
docker compose build

# Mettre à jour les conteneurs
docker compose pull
docker compose up -d

9. Nettoyer Docker

Commandes de nettoyage
# Supprimer les conteneurs arrêtés
docker container prune

# Supprimer les images non utilisées
docker image prune

# Supprimer les volumes non utilisés
docker volume prune

# Supprimer les réseaux non utilisés
docker network prune

# Tout nettoyer (attention !)
docker system prune -a

10. Configurer le stockage des logs

Par défaut, Docker peut générer beaucoup de logs. Limitez leur taille :

Configurer la rotation des logs
# Créer/éditer le fichier de configuration Docker
mkdir -p /etc/docker
cat > /etc/docker/daemon.json << 'EOF'
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}
EOF

# Redémarrer Docker
systemctl restart docker

Applications populaires à déployer

  • Portainer : Interface web pour gérer Docker
  • Nginx Proxy Manager : Reverse proxy avec interface graphique
  • Traefik : Reverse proxy moderne
  • Nextcloud : Cloud personnel
  • WordPress : Blog/CMS
  • GitLab : Gestion de code
  • Grafana + Prometheus : Monitoring
Exemple : Installer Portainer
# Créer un volume pour les données
docker volume create portainer_data

# Lancer Portainer
docker run -d \
  --name portainer \
  --restart=always \
  -p 9443:9443 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer-ce:latest

# Accéder à https://VOTRE_IP:9443
Docker installé !

Docker est maintenant prêt à déployer vos applications. Consultez hub.docker.com pour trouver des images officielles.

💬 Écrivez-nous sur Messenger !