From 65ac0c30a5f8e1f3c53fb06ff34296b157296d68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Math=C3=A9o=20DESSAAUVAGES?= Date: Sun, 1 Feb 2026 00:42:00 +0100 Subject: [PATCH] feat: Added wg-easy --- dist/wg-easy/.env.template | 5 +++++ dist/wg-easy/compose.yaml | 41 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 dist/wg-easy/.env.template create mode 100644 dist/wg-easy/compose.yaml diff --git a/dist/wg-easy/.env.template b/dist/wg-easy/.env.template new file mode 100644 index 0000000..ae9599a --- /dev/null +++ b/dist/wg-easy/.env.template @@ -0,0 +1,5 @@ +BASE_DOMAIN=example.com +SERVICE_DOMAIN=wg-easy.example.com + +WG_NETWORK_SUBNET=10.42.42.0/24 +WG_NETWORK_ADDRESS=10.42.42.42 \ No newline at end of file diff --git a/dist/wg-easy/compose.yaml b/dist/wg-easy/compose.yaml new file mode 100644 index 0000000..fa15436 --- /dev/null +++ b/dist/wg-easy/compose.yaml @@ -0,0 +1,41 @@ +services: + wg-easy: + + image: ghcr.io/wg-easy/wg-easy:15 + container_name: wg-easy + networks: + traefik-network: {} + wg: + ipv4_address: ${WG_NETWORK_ADDRESS} + volumes: + - ./etc_wireguard:/etc/wireguard + - /lib/modules:/lib/modules:ro + environment: + - WG_HOST=${SERVICE_DOMAIN} + ports: + - "51820:51820/udp" + restart: unless-stopped + cap_add: + - NET_ADMIN + - SYS_MODULE + sysctls: + - net.ipv4.ip_forward=1 + - net.ipv4.conf.all.src_valid_mark=1 + labels: + - "traefik.enable=true" + - "traefik.http.routers.wg-easy.rule=Host(`${SERVICE_DOMAIN}`)" + - "traefik.http.routers.wg-easy.entrypoints=https" + - "traefik.http.routers.wg-easy.tls.certresolver=letsencrypt" + - "traefik.http.routers.wg-easy-service.service=wg-easy" + - "traefik.http.services.wg-easy-service.loadbalancer.server.port=51821" + +networks: + traefik-network: + external: true + wg: + driver: bridge + enable_ipv6: false + ipam: + driver: default + config: + - subnet: ${WG_NETWORK_SUBNET} \ No newline at end of file