Outils pour utilisateurs

Outils du site


dockers

Ceci est une ancienne révision du document !


Guide d'installation Docker & Docker Compose – Ubuntu 26.04

Introduction

Ce guide détaille l'installation de Docker et Docker Compose sur une machine virtuelle Ubuntu 26.04, avec des exemples concrets de conteneurs à tester et déployer.


Prérequis

  • Machine virtuelle Ubuntu 26.04 (Noble Numbat)
  • Accès sudo ou root
  • Connexion internet
  • Minimum 5 Go d’espace disque

Installation de Docker

1. Mise à jour du système

sudo apt update && sudo apt upgrade -y

2. Installation des dépendances

sudo apt install -y ca-certificates curl gnupg

3. Ajout du dépôt officiel Docker

sudo install -m 0755 -d /etc/apt/keyrings
 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
 
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu noble stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. Installation de Docker Engine

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

5. Démarrer et activer Docker

sudo systemctl enable --now docker

6. Vérifier l'installation

sudo docker run hello-world

Si tu vois “Hello from Docker!”, l'installation est réussie.


Installation de Docker Compose

Méthode 1 : Plugin intégré (recommandé)

docker compose version

Méthode 2 : Version standalone

sudo curl -SL https://github.com/docker/compose/releases/latest/download/docker-compose-linux-$(uname -m) \
  -o /usr/local/bin/docker-compose
 
sudo chmod +x /usr/local/bin/docker-compose
 
docker compose --version

Ajouter ton utilisateur au groupe Docker

sudo usermod -aG docker $USER
newgrp docker

Déconnecte-toi et reconnecte-toi pour appliquer les changements.


Tester Docker

Lancer un conteneur Nginx

docker run -d --name test_nginx -p 8090:8090  nginx
  • Accès : http:<IP>:8090 * Vérifier : <code>docker ps</code> * Arrêter : <code bash> docker stop test_nginx && docker rm test_nginx </code> —- ===== Exemples de conteneurs à tester ===== ^ Service ^ Commande ^ Port ^ Accès ^ | Portainer | <code>docker run -d -p 9000:9000 –name portainer -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer</code> | 9000 | http:<IP>:9000 |

| Adminer |

docker run -d --name adminer -p 8080:8080 adminer

| 8080 | http:<IP>:8080 | | Redis | <code>docker run -d –name redis -p 6379:6379 redis</code> | 6379 | <code>docker exec -it redis redis-cli</code> | | MySQL | <code>docker run -d –name mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 mysql:8.0</code> | 3306 | <code>docker exec -it mysql mysql -u root -p</code> | | WordPress | Voir section Docker Compose | 8080 | http:<IP>:8080 |


Déployer des applications avec Docker Compose

1. Exemple : WordPress + MySQL

Créer un fichier docker-compose.yml :

version: '3.8'

services:
  db:
    image: mysql:8.0
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "9000:9000"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress

volumes:
  db_data:
  wordpress_data:

Lancer :

docker compose up -d

2. Exemple : Node.js + MongoDB

version: '3.8'

services:
  app:
    image: node:18
    working_dir: /app
    volumes:
      - ./app:/app
    ports:
      - "3000:3000"
    command: sh -c "npm install && npm start"
    depends_on:
      - mongo

  mongo:
    image: mongo:6
    volumes:
      - mongo_data:/data/db
    ports:
      - "27017:27017"
    environment:
      MONGO_INITDB_ROOT_USERNAME: root
      MONGO_INITDB_ROOT_PASSWORD: example

volumes:
  mongo_data:

Lancer :

docker compose up -d

Dépannage

Problème Solution
Cannot connect to the Docker daemon Vérifier :
sudo systemctl status docker

puis

sudo systemctl start docker
Erreur de permissions Ajouter l’utilisateur au groupe docker :
sudo usermod -aG docker $USER
docker-compose non trouvé Utiliser
docker compose

ou installer :

sudo apt install docker-compose-plugin
Port déjà utilisé Modifier le port ou arrêter le service
Espace disque insuffisant
docker system prune -a

Commandes Docker utiles

Commande Description
docker ps
Conteneurs en cours
docker ps -a
Tous les conteneurs
docker images
Images locales
docker pull &lt;image&gt;
Télécharger une image
docker run -it &lt;image&gt; /bin/bash
Mode interactif
docker exec -it &lt;container&gt; /bin/bash
Shell dans un conteneur
docker logs &lt;container&gt;
Logs
docker stop &lt;container&gt;
Arrêter
docker rm &lt;container&gt;
Supprimer
docker rmi &lt;image&gt;
Supprimer une image
docker system prune
Nettoyage

Conseils pour les stagiaires

  • Expérimente avec les fichiers docker-compose.yml
  • Lis les logs :
    docker logs
  • Nettoie régulièrement :
    docker system prune
  • Documente tes tests
  • Utilise la communauté (StackOverflow, forums Docker)

Checklist de validation

  • [ ] Docker installé et fonctionnel
  • [ ] Docker Compose installé
  • [ ] Conteneur Nginx testé
  • [ ] Stack WordPress + MySQL déployée
  • [ ] Commandes de base maîtrisées
  • [ ] Projet personnel déployé

Ressources supplémentaires

dockers.1782137641.txt.gz · Dernière modification : de 185.135.127.195