Skip to content

Démarrage rapide

Aerya edited this page Aug 12, 2026 · 2 revisions

Démarrage rapide

1. Exposer le proxy HTTP Gluetun sur l'hôte

# dans votre docker-compose.yml Gluetun existant
ports:
  - 8887:8888   # ou le port que vous avez configuré

environment:
  HTTPPROXY: "on"
  HTTPPROXY_LOG: "off"
  # HTTPPROXY_USER: ""       # optionnel — à reporter dans Paramètres de l'UI
  # HTTPPROXY_PASSWORD: ""

2. Monter le dossier compose de Gluetun

Le companion doit pouvoir écrire un docker-compose.override.yml dans le dossier qui contient votre docker-compose.yml Gluetun, puis relancer le service.

Unraid / DockerMan Si Gluetun est géré par le Docker Manager d'Unraid (net.unraid.docker.managed=dockerman), Companion détecte ce backend automatiquement et n'utilise pas docker compose pour les bascules. Montez le dossier des templates Unraid en écriture, par exemple - /boot/config/plugins/dockerMan/templates-user:/boot/config/plugins/dockerMan/templates-user, afin que les changements soient persistés dans le template DockerMan avant recréation du container. CONTROL_BACKEND=unraid permet de forcer ce mode si la détection automatique ne suffit pas.

3. Lancer le companion

services:

  socket-proxy:
    image: tecnativa/docker-socket-proxy
    container_name: socket-proxy
    restart: always
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      CONTAINERS: 1
      IMAGES: 1
      NETWORKS: 1
      VOLUMES: 1
      POST: 1
      DELETE: 1
    networks:
      - companion-net

  gluetun-companion:
    image: ghcr.io/aerya/gluetun-companion:latest
    container_name: gluetun-companion
    restart: always
    ports:
      - 8765:8765
    volumes:
      - /chemin/vers/data:/data
      - /chemin/vers/stack/gluetun:/compose   # ← adapter
      - /chemin/vers/gluetun/openvpn:/openvpn
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      - TZ=Europe/Paris
      - SECRET_KEY=remplacer-par-une-chaine-aleatoire   # openssl rand -hex 32
      - DATA_DIR=/data
      - GLUETUN_HOST=host.docker.internal
      - GLUETUN_PROXY_PORT=8887
      - GLUETUN_CONTAINER=gluetun-airvpn   # nom exact du container Gluetun (le service Compose est détecté automatiquement)
      - COMPOSE_DIR=/compose
      - OPENVPN_CONFIG_DIR=/openvpn
      - OPENVPN_CONTAINER_DIR=/gluetun/openvpn
      - DOCKER_HOST=tcp://socket-proxy:2375
      # Optionnel : protéger /metrics par un Bearer token.
      # Laisser vide (ou non défini) pour un accès libre — standard pour les scrapes Prometheus internes.
      # - METRICS_TOKEN=votre-token-secret
    networks:
      - companion-net
    depends_on:
      - socket-proxy

networks:
  companion-net:
docker compose up -d

Pourquoi socket-proxy ? Le socket Docker donne un accès quasi-total à l'hôte. Le proxy Tecnativa s'intercale entre Companion et le socket, et restreint l'accès aux opérations nécessaires : lecture des containers/images/réseaux/volumes, et POST/DELETE requis pour créer et supprimer les containers sidecar temporaires. Il empêche notamment tout accès direct au daemon (exec, info, swarm…). Fonctionnement identique pour l'utilisateur, surface d'attaque réduite.

Ouvrir http://localhost:8765 — première connexion : entrez le compte à créer (enregistré automatiquement).

Unraid / DockerMan : un template XML temporaire est disponible dans templates/unraid pour une installation manuelle ou via Private Apps, en attendant une éventuelle publication Community Applications.

Companion dans la même stack que Gluetun ? Supprimez extra_hosts et utilisez le nom de service : GLUETUN_HOST: gluetun. Lors d'une bascule, le companion cible uniquement le service Gluetun (docker compose up -d <service>) — il ne se recrée pas lui-même.

4. Importer les serveurs

Serveurs → Importer depuis Gluetun : le companion lit les variables SERVER_NAMES, SERVER_COUNTRIES, etc. directement depuis le container en cours et importe chaque valeur avec son type de filtre. Le catalogue Gluetun peut aussi importer les serveurs par pays, ville, région, hostname ou nom, avec filtre de type serveur quand le fournisseur l'expose (par exemple P2P, Streaming, Secure Core, Tor ou Free chez ProtonVPN). Ajout manuel possible depuis le même écran.

Une entrée est une cible Gluetun. SERVER_NAMES=CH#12 cible ce serveur précis. SERVER_COUNTRIES=Switzerland cible le pays : Companion demande « Suisse », puis Gluetun choisit lui-même un endpoint compatible dans ce pays, comme en fonctionnement autonome. Pour comparer les serveurs Proton individuellement, ouvrez le Catalogue Gluetun et importez leurs noms. Davantage de candidats peut améliorer la sélection, mais allonge les benchmarks.


Gluetun Companion

Français

English


🇫🇷 Français · 🇬🇧 English

Clone this wiki locally