Direction les docks numérique

Suite à mon précédent article sur l’auto-hébergement, voici la suite des articles que je vais faire sur ce thème.
Nous allons maintenant procéder à l’installation de Docker, Docker Compose et Portainer. Libre à vous d’installer l’intégralité ou seulement une partie de ces outils : seul Docker est obligatoire. Docker Compose et Portainer, quant à eux, sont facultatifs et indépendants l’un de l’autre.
**Mise à jour du 8.6.23 : Correction de quelques coquille et ajout de l’installation du plugin docker-compose.
Je pars du principe que vous êtes sur une machine déjà fonctionnelle et nouvellement installée sous Ubuntu.
Docker nous permettra d’orchestrer les conteneurs.
Docker Compose sera particulièrement utile pour configurer les conteneurs, puisque cela se fera via un fichier YAML. Cette approche offre une gestion plus précise et flexible des paramètres.
Portainer ajoute une couche visuelle pour faciliter la gestion des conteneurs Docker. Il peut être utilisé indifféremment avec ou sans Docker Compose.
Installation de docker
L’installation de Docker est relativement simple. Vous avez le choix entre deux méthodes avec une installation pas à pas (pour suivre chaque étape), ou l’exécution d’un script automatisé.
1 . L’installation pas à pas
sudo apt update
sudo apt-get install curl apt-transport-https lsb-release gnupg ca-certificates software-properties-common
Pour les distributions base Ubuntu :
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Pour les distributions base Debian :
# Ajout de la clé GPG officielle de Docker
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Ajout du dépôt Docker :
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
On passe à l’installation des paquets de Docker.
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
On vérifie si Docker est bien opérationnel.
sudo systemctl status docker
- Installation de docker en une seule commande
curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh
Et on termine par l’ajout de votre utilisateur au groupe Docker si vous souhaitez éxecuter les commandes sans passer par sudo.
sudo usermod -aG docker username
Installation de docker-compose
**Petit changement, si vous installez docker-compose-plugin cette partie n’est pas nécessaire.
Pour Docker Compose, nous allons utiliser un script que j’ai développé. Récupérez-le, puis exécutez-le en précisant la version souhaitée (la dernière en date est la 2.14.2).
GitHub - Mise à jour automatiser de docker compose avec intéraction
Vous pouvez créer la commande docker-compose en créant le lien symbolique entre le script et le dossier /usr/bin :
sudo ln -s ~/vers/votre/fichier/docker-compose /usr/bin/docker-compose
Si tout est bon, alors lorsque vous lancerez la commande docker-compose version, vous obtiendrez ce résultat.
Lors de nouvelle version, vous n’aurez plus qu’à lancer le script et indiqué la version.
Installation de Portainer
À présent, que docker et docker-compose sont installés sur votre serveur, on va procéder à l’installation de Portainer. Il n’est bien sûr pas indispensable, mais utile pour certaines tâches qui vous éviteront de passer par un CLI. Si vous n’êtes pas du tout familier avec les lignes de commande, alors Portainer est fort utile.
On va commencer par la création d’un dossier qui rassemblera toutes vos applications. Et dans chacun de ces dossiers d’appli, il vous faut créer un dossier data (pour le stockage des données) et un fichier docker-compose.yml
mkdir ~/docker_apps/
• data/
• docker-compose.yml
Dans votre dossier Portainer, créer le fichier docker-compose.yml et C/C le contenu suivant dans votre fichier :
services:
portainer:
container_name: portainer
image: portainer/portainer-ce
restart: unless-stopped
command: -H unix:///var/run/docker.sock
ports:
- 9000:9000
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./data:/data
Composition du fichier :
ports : - 9000:9000 ⇒ - port de sortir (celui que vous modifiez) : port de l’app (celui qui est à laisser par défaut)
Et lancer la commande de création et lancement à la racine du dossier de l’application :
docker compose up -d
Il ne vous reste plus qu’à vous rendre sur le lien suivant avec l’IP et le port choisi. http://SERVER_IP:PORT/
Source :