Docker - DockGe

by Tyleo Dv. Delaware

Share

Dockge

Les informations de bases :

L'idée de base :

Dockge permet d'administrer et de gérer une installation Docker avec Compose et de rester organisé pour le stockage des Composes et de leur fichier .env et ce, sous forme de répertoires auto managés mais récupérables manuellement sans soucis (pas de Lock-In comme Portainer ou CapRover).

Dockge n'est pas aussi puissant que Portainer ou CapRover, mais suffit amplement aux fonctions basiques de Docker. Dockge inclus :

Contextes intéressants pour Dockge :

Il est aussi a remarquer qu'il est possible d'avoir une instance Dockge sans conténaires ni gestion (donc composes etc...) qui servira uniquement pour le contrôle des agents distants. J'ai appellé dans mon infrastructure, cela un Contrôleur Dockge.

Vous pouvez :

Le QA :

Q : Pourquoi un Contrôleur ?
A : L'usage d'une Passerelle entre le Web et l'Agent est une bonne idée pour maintenir un semblant d'isolation. Cela limite la surface d'attaque potentielle.

Q : Le Contrôleur peut-il avoir son propre serveur ?
A : Oui, une VM, un conténaire LXC ou un Hôte Physique peut accueillir un Contrôleur Dockge.

Q : Quelle méthode conseille tu pour la position du Contrôleur Dockge vis-a-vis du premier agent ?
A : J'ai choisi d'avoir Contrôleur et Agent sur la Production. Le Contrôleur se connecte sur l'Agent et cela fonctionne très bien. L'agent reste isolé.

Déployer Dockge

Pour une instance dite "Agent"

services:
  dockge:
    image: louislam/dockge:1
    restart: unless-stopped
    container_name: dockge-agent
    ports:
      - 5001:5001
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./data:/app/data
      - /opt/stacks:/opt/stacks # Répertoire des Composes, par défaut sur opt stacks, mais peut être modifié.
    environment:
      # Tell Dockge where to find the stacks
      - DOCKGE_STACKS_DIR=/opt/stacks

Pour une instance dite "Controller"

Ne jamais tenter de garder des composes sur "Actuel" ou "Local" sur cette version. Au prochain redémarrage du conténaire, les composes sur ce conténaire seront perdus !! N'oubliez pas que ce modèle n'est pas fait pour gérer l'instance locale !
{.is-warning}
services:
  dockge:
    image: louislam/dockge:1
    restart: unless-stopped
    container_name: dockge-controller
    ports:
      - 5000:5001
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro # Désactiver le contrôle local de Docker
      - ./data:/app/data
    environment:
      # Tell Dockge where to find the stacks
      - DOCKGE_STACKS_DIR=/opt/stacks