Configuration Wireguard Docker
Docker compose
# =============================================================================
# docker-compose.yml — VPS OVH (WireGuard Hub + Portainer UI)
# Version 3 — pare-feu géré par UFW (pas de règles dans wg0.conf)
# =============================================================================
# Arborescence :
# /opt/wireguard-ovh/
# ├── docker-compose.yml
# └── wg-config/wg0.conf (= servers/ovh-wg0.conf renommé)
#
# Démarrage :
# docker compose up -d
# sudo bash ovh-ufw-setup.sh # APRÈS, pour que wg0 existe
# =============================================================================
services:
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard-ovh
# network_mode: host — cohabite sans souci avec d'autres conteneurs host
# (ex : Home Assistant sur Albi). Indispensable pour que wg0 et le
# routage soient au niveau de l'hôte, où UFW applique ses règles.
network_mode: host
cap_add:
- NET_ADMIN
- SYS_MODULE
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
volumes:
- ./wg-config:/config
# Accès au module kernel wireguard de l'hôte
- /lib/modules:/lib/modules:ro
restart: unless-stopped
portainer:
image: portainer/portainer-ce:latest
container_name: portainer-ui
# Bind sur l'IP WireGuard uniquement : invisible depuis l'IP publique OVH.
ports:
- "10.0.0.1:9000:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer-data:/data
restart: unless-stopped
depends_on:
- wireguard
volumes:
portainer-data:
---
# =============================================================================
# docker-compose.yml — Serveur Marseille (WireGuard + Portainer Agent)
# wg-config/wg0.conf = servers/marseille-wg0.conf
# Lancer ensuite : sudo bash marseille-ufw-setup.sh
# =============================================================================
services:
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard-mrs
network_mode: host
cap_add:
- NET_ADMIN
- SYS_MODULE
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
volumes:
- ./wg-config:/config
- /lib/modules:/lib/modules:ro
restart: unless-stopped
portainer-agent:
image: portainer/agent:latest
container_name: portainer-agent
# Bind sur l'IP WireGuard de Marseille — joignable seulement via le mesh.
ports:
- "10.0.0.2:9001:9001"
environment:
- AGENT_PORT=9001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
restart: unless-stopped
depends_on:
- wireguard
---
# =============================================================================
# docker-compose.yml — Serveur Albi (WireGuard + Portainer Agent)
# wg-config/wg0.conf = servers/albi-wg0.conf
# Lancer ensuite : sudo bash albi-ufw-setup.sh
#
# Home Assistant / Frigate tournent déjà sur ce serveur : aucun changement
# requis pour eux. WireGuard en host cohabite avec HA en host.
# =============================================================================
services:
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard-albi
network_mode: host
cap_add:
- NET_ADMIN
- SYS_MODULE
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
volumes:
- ./wg-config:/config
- /lib/modules:/lib/modules:ro
restart: unless-stopped
portainer-agent:
image: portainer/agent:latest
container_name: portainer-agent
# Bind sur l'IP WireGuard d'Albi.
ports:
- "10.0.0.3:9001:9001"
environment:
- AGENT_PORT=9001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
restart: unless-stopped
depends_on:
- wireguard
No comments to display
No comments to display