Post

🟩 Proxmox VM Debian 13 (image cloud) (vm-trixie01)

🟩 Proxmox VM Debian 13 (image cloud) (vm-trixie01)

Proxmox VM Debian 13

Installer Docker dans une machine virtuelle avec une image cloud debian 13

VM - vm-trixie01

Le réseau est géré par netplan, configuration dans le dossier /etc/netplan

Générer une paire de clé sur l'ordinateur de bureau PC1
Générer une paire de clé curve25519-sha256 (ECDH avec Curve25519 et SHA2) pour une liaison SSH avec le serveur.

1
2
ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/vm-trixie01
chmod 600 ~/.ssh/vm-trixie01

Promox shell
Cloner le modèle pour déployer rapidement une VM (en mode shell su sous Proxmox)

  • Faire un clone du modèle :
    1
    
    qm clone 900 200 --name vm-trixie01
    
  • Définir les paramètres via le menu cloud-init :

Utilisateur: yak
Mot de passe: yak49
Clef publique: cat ~/.ssh/vm-trixie01.pub
Configuration IP: ip=192.168.0.225,gw=192.168.0.205

  • Une fois les informations renseignées, cliquer sur « Démarrer » :

Matériel

Se connecter à la VM sur le poste linux avec la clé SSH

1
ssh -i ~/.ssh/vm-trixie01 yak@192.168.0.225

Motd
Création nouveau motd

1
2
sudo apt install rsync curl tmux jq figlet git tree -y
sudo rm /etc/motd && sudo nano /etc/motd

Texte ASCII

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  ____                                     __     ____  __ 
 |  _ \ _ __ _____  ___ __ ___   _____  __ \ \   / /  \/  |
 | |_) | '__/ _ \ \/ / '_ ` _ \ / _ \ \/ /  \ \ / /| |\/| |
 |  __/| | | (_) >  <| | | | | | (_) >  <    \ V / | |  | |
 |_|   |_|  \___/_/\_\_| |_| |_|\___/_/\_\    \_/  |_|  |_|
                        _        _      _       ___  _     
 __   ___ __ ___       | |_ _ __(_)_  _(_) ___ / _ \/ |    
 \ \ / / '_ ` _ \ _____| __| '__| \ \/ / |/ _ \ | | | |    
  \ V /| | | | | |_____| |_| |  | |>  <| |  __/ |_| | |    
   \_/ |_| |_| |_|      \__|_|  |_/_/\_\_|\___|\___/|_|    
  _  ___ ____    _  __    ___   ___   ____  ____  ____     
 / |/ _ \___ \  / |/ /_  ( _ ) / _ \ |___ \|___ \| ___|    
 | | (_) |__) | | | '_ \ / _ \| | | |  __) | __) |___ \    
 | |\__, / __/ _| | (_) | (_) | |_| | / __/ / __/ ___) |   
 |_|  /_/_____(_)_|\___/ \___(_)___(_)_____|_____|____/    

Alias fichier .bash_aliases

1
2
alias journal='sudo SYSTEMD_LESS=FRXMK journalctl'
alias service='systemctl list-units --type=service --state=running'

Valider; source .bash_aliases

Client NFS

Installer nfs client

1
sudo apt -y install nfs-common

Créer le point de montage

1
mkdir ~/docker-data

Pour monter automatiquement les actions NFS, une entrée doit être faite à /etc/fstab comme suit:

1
192.168.0.205:/sharenfs/docker-data /home/yak/docker-data nfs4 rw,_netdev 0 0

Recharger systemd et le montage NFS

1
2
sudo systemctl daemon-reload
sudo mount -a

Mariadb

Installation

1
sudo apt -y install mariadb-server 

node

Installer NodeJs via nvm

Versions installée node -v && npm -v

1
2
v24.14.0
11.9.0

Docker

Installer docker

Installer les dépendances nécessaires au bon fonctionnement de Docker.

1
sudo apt install apt-transport-https ca-certificates curl gpg

Ajouter la clé GPG officielle Deuxièmement, nous devons ajouter le dépôt officiel de Docker à notre machine Debian afin de pouvoir récupérer les sources. Commençons par récupérer la clé GPG qui nous permettra de valider les paquets récupérés depuis le dépôt Docker :

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

Ajouter le dépôt Docker à la liste des sources de notre machine

1
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/debian trixie stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Installer Docker
Exécutez la commande suivante pour installer la dernière version de Docker à jour sur Debian 13.

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

Docker est installé, le service doit être démarré et activé pour s’exécuter automatiquement au démarrage par défaut. Vérifions.

1
sudo systemctl is-active docker

renvoie active si tout est OK

Pour exécuter les commandes docker en tant qu’utilisateur non root, vous devez d’abord ajouter votre utilisateur au groupe « docker ».

1
sudo usermod -aG docker ${USER}

Dans la commande ci-dessus, ${USER} est une variable d’environnement système qui contient votre nom d’utilisateur puis exécuter la commande suivante pour activer les modifications au groupe:

1
newgrp docker

Vérifiez que Docker fonctionne :

1
docker run hello-world

Si tout est correctement configuré, vous verrez le message de bienvenue de Docker. Version docker: docker version

Watchtower

Watchtower est un petit outil fonctionnant avec Docker et analysant les containers Docker lancés pour vérifier si une mise à jour de leur image est disponible. Si c’est le cas, la nouvelle image est téléchargée puis le container est mis à jour avec la nouvelle image.

Créer un dossier

1
2
mkdir ~/watchtower
cd ~/watchtower

le fichier docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
services:
  watchtower:
    image: containrrr/watchtower:latest
    container_name: watchtower
    restart: unless-stopped
    environment:
      DOCKER_API_VERSION: "1.52"
      WATCHTOWER_POLL_INTERVAL: 86400
      WATCHTOWER_CLEANUP: true
      WATCHTOWER_INCLUDE_RESTARTING: true
      WATCHTOWER_LOG_LEVEL: info
      WATCHTOWER_HTTP_API_METRICS: false
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro

Lancer

1
docker compose up -d

Vérifier

1
docker logs watchtower

Info

1
2
3
4
5
time="2025-12-02T10:04:22Z" level=info msg="Watchtower 1.7.1"
time="2025-12-02T10:04:22Z" level=info msg="Using no notifications"
time="2025-12-02T10:04:22Z" level=info msg="Checking all containers (except explicitly disabled with label)"
time="2025-12-02T10:04:22Z" level=info msg="Scheduling first run: 2025-12-03 10:04:22 +0000 UTC"
time="2025-12-02T10:04:22Z" level=info msg="Note that the first check will be performed in 23 hours, 59 minutes, 59 seconds"

Projet HertzBeat

Cet article est sous licence CC BY 4.0 par l'auteur.