# Installation (debian)

**Mettre à jour votre système**

Avant d'installer Docker, il est recommandé de mettre à jour votre système Debian pour s'assurer que tous les paquets sont à jour.

```bash
sudo apt update && sudo apt upgrade -y
```

**Installer les dépendances nécessaires**

Docker nécessite quelques outils comme `apt-transport-https`, `ca-certificates`, `curl`, `software-properties-common` et `gnupg2`. Installez-les en utilisant la commande suivante :

```bash
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg2 -y
```

**Ajouter la clé GPG officielle de Docker**

Docker signe ses paquets avec une clé GPG pour garantir leur authenticité. Vous devez ajouter cette clé pour pouvoir installer Docker depuis les dépôts officiels.

```bash
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
```

**Ajouter le dépôt Docker**

Ensuite, vous devez ajouter le dépôt officiel de Docker à votre liste de sources APT. Exécutez cette commande pour ajouter le dépôt stable :

```bash
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
```

**Mettre à jour les sources**

Une fois le dépôt Docker ajouté, vous devez mettre à jour la liste des paquets disponibles pour que le système reconnaisse les paquets Docker :

```bash
sudo apt update
```

**Installer Docker**

Vous pouvez maintenant installer Docker. Utilisez la commande suivante pour installer Docker CE (Community Edition) :

```bash
sudo apt install docker-ce docker-ce-cli containerd.io -y
```

**Vérifier l'installation**

Une fois Docker installé, vérifiez qu'il fonctionne correctement en exécutant la commande suivante pour voir la version de Docker installée :

```bash
docker --version
```

**Démarrer et activer le service Docker**

Par défaut, le service Docker devrait démarrer automatiquement après l'installation. Si ce n'est pas le cas, vous pouvez le démarrer manuellement et l'activer pour qu'il démarre automatiquement au démarrage de votre VM :

```bash
sudo systemctl start docker
sudo systemctl enable docker
```

**Vérifier que Docker fonctionne correctement**

Pour vérifier que Docker fonctionne correctement, exécutez la commande suivante, qui va télécharger et exécuter un conteneur test :

```bash
sudo docker run hello-world
```

Si tout est correctement installé, vous devriez voir un message vous indiquant que Docker fonctionne correctement.

**Ajouter votre utilisateur au groupe Docker (facultatif)**

Si vous souhaitez exécuter des commandes Docker sans avoir à utiliser `sudo` à chaque fois, vous pouvez ajouter votre utilisateur au groupe `docker` :

```bash
sudo usermod -aG docker $USER
```

Pour que ce changement prenne effet, vous devez vous déconnecter puis vous reconnecter à votre session ou exécuter la commande suivante :

```bash
newgrp docker
```