Skip to content
U UOpsLab
infra-devops self-hosted Docker monitoring DockHand Hawser tutoriels

Hawser : connecter un serveur Docker à DockHand en mode Edge

Préparer un agent Hawser en mode Edge pour rattacher un hôte Docker à DockHand quand le serveur n’est pas dans votre réseau local.

R

Raynal.T

5 min de lecture
Hawser en mode Edge connecté à DockHand

Après avoir testé Hawser en mode Standard, j’ai maintenant besoin de manager un serveur Docker via DockHand, alors qu’il n’est pas directement joignable depuis mon infra locale.

Lors de la présentation de Hawser, j’avais bien parlé de ces deux modes. C’est l’occasion pour moi de le mettre en pratique.

Car oui, je me suis bien habitué à l’interface DockHand et je veux pouvoir l’utiliser pour m’adapter à ces différents cas :

  • ➡️ serveur derrière un NAT ;
  • ➡️ firewall un peu fermé ;
  • ➡️ IP dynamique ;
  • ➡️ pas envie d’ouvrir un port entrant juste pour l’agent.

Donc oui, pour ces cas de figure, le mode Edge de Hawser devient beaucoup plus intéressant.

Mode Edge

L’agent Hawser initie la connexion vers DockHand au lieu d’attendre une connexion entrante.

Flux sortant

Pratique quand on veut éviter d’exposer un port Hawser côté serveur Docker.

Supervision

DockHand garde la vue sur les containers, stacks, logs, ressources et alertes.

Prérequis

Comme toujours, je suis sur une base Debian et voici les deux points de prérequis pour avancer avec moi :

  • ➡️Environnement Docker et Docker Compose installés
  • ➡️DockHand déjà déployé et accessible

1. Créer l’environnement Edge dans DockHand

Dans DockHand :

  1. 1️⃣ Depuis le dashboard de DockHand, avec le +, créer un nouvel environnement
  2. 2️⃣ Choisir le type de connexion Hawser - Edge
Choix du type de connexion Hawser agent edge dans DockHand
  1. 3️⃣ Cliquer sur le bouton de génération du token
Générer le Token de connexion pour Hawser Edge dans DockHand
  1. 4️⃣Récupérez bien l’URL et le token
Copy this token now - you'll need it for the Hawser agent!

TOKEN=Yi7cUygvirth9d53DSLnweEtapgZbsmy3hzSjr29mWc

Run on your host:
DOCKHAND_SERVER_URL=wss://votredockhand.votredomaine.fr/api/hawser/connect
  1. Stockez bien ces informations pour venir remplir votre .env.

2. Préparer le dossier Hawser

Sur le serveur Docker distant :

mkdir -p ~/docker/hawser/stacks
cd ~/docker/hawser

Puis préparer le fichier d’environnement :

nano .env
# TODO: adapter avec les valeurs fournies par DockHand
HAWSER_AGENT_NAME=Hawser-Edge-VM-Test
HAWSER_EDGE_URL=wss://votredockhand.votredomaine.fr/api/hawser/connect
HAWSER_EDGE_TOKEN=Yi7cUygvirth9d53DSLnweEtapgZbsmy3hzSjr29mWc

3. Docker Compose Hawser Edge

Voilà, on a notre arborescence et notre .env, on peut commencer notre Docker Compose.

nano docker-compose.yml
services:
  hawser:
    image: ghcr.io/finsys/hawser:latest
    container_name: hawser-edge
    restart: unless-stopped
    env_file:
      - .env
    environment:
      AGENT_NAME: "${HAWSER_AGENT_NAME}"
      STACKS_DIR: "./stacks"
      LOG_LEVEL: "info"

      # Variables DockHand pour le mode Hawser Edge
      DOCKHAND_SERVER_URL: "${HAWSER_EDGE_URL}"
      TOKEN: "${HAWSER_EDGE_TOKEN}"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./stacks:/opt/hawser-stacks

4. Lancer l’agent

Allez, on est tout bon, on peut lancer notre agent Hawser :

sudo docker compose up -d

Comme toujours, je ne vais même pas voir l’interface web de mon DockHand sans avoir fait un :

sudo docker compose logs -f

Et voilà, on est bien connecté à DockHand :

hawser-edge  | ╭─────────────────────────────────────╮
hawser-edge  | │           HAWSER AGENT              │
hawser-edge  | │     Remote Docker Agent for         │
hawser-edge  | │           Dockhand                  │
hawser-edge  | ╰─────────────────────────────────────╯
hawser-edge  | Version: 0.2.42 (3d997fa)
hawser-edge  | Agent ID: 138a733a-a598-48a2-ac9b-0825c5ac3f62
hawser-edge  | Agent Name: Hawser-Edge-VM-Test
hawser-edge  | Docker Socket: /var/run/docker.sock
hawser-edge  | Log Level: INFO
hawser-edge  |
hawser-edge  | 2026/05/20 11:02:30 [INFO] Starting in Edge mode, connecting to wss://votredockhand.votredomaine.fr/api/hawser/connect
hawser-edge  | 2026/05/20 11:02:30 [INFO] Connected to Docker 29.4.3 (API 1.54)
hawser-edge  | 2026/05/20 11:02:30 [INFO] Connecting to wss://votredockhand.votredomaine.fr/api/hawser/connect
hawser-edge  | 2026/05/20 11:02:30 [INFO] Starting health server on 0.0.0.0:2376
hawser-edge  | 2026/05/20 11:02:31 [INFO] Welcome received, environment ID: 0
hawser-edge  | 2026/05/20 11:02:31 [INFO] Connected to Dockhand server
hawser-edge  | 2026/05/20 11:02:31 [INFO] Connected to Docker events stream

5. Vérifier côté DockHand

Et voilà, très rapidement sur votre dashboard, vous avez votre nouvel agent.

Vérifier l'ajout du nouvel agent Hawser Edge dans le dashboard DockHand

À retenir

C’est sans appel, le couple DockHand et Hawser est bien rodé, la doc est claire et le mode Edge est vraiment simple à mettre en place.

Donc si vous avez des serveurs à l’extérieur de votre environnement, pas de panique : il y a des solutions simples et sécurisées pour les manager et les monitorer.

Sources

Cet article vous a-t-il été utile ?

Votre retour aide à mieux choisir les prochains sujets.

Retour aux articles
Share:

Suivre UOpsLab

Nouveaux articles, retours terrain et notes de lab.