Skip to content

Wireguard VPN With GUI

docker-compose.yml

YAML
---
version: "3.7"
services:
  wireguard:
    image: lscr.io/linuxserver/wireguard:latest
    container_name: wireguard
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
#      - SERVERURL=wireguard.kafana.dev #optional
      - SERVERPORT=51820 #optional
      - PEERS=1 #optional
      - PEERDNS=auto #optional
      - INTERNAL_SUBNET=10.13.13.0 #optional
      - ALLOWEDIPS=0.0.0.0/0 #optional
      - LOG_CONFS=true #optional
    volumes:
      - ./config:/config
      - /lib/modules:/lib/modules
    ports:
      - 51820:51820/udp
      - 0.0.0.0:5002:5000
    sysctls:
      - net.ipv4.conf.all.src_valid_mark=1
    restart: unless-stopped

  wg:
#    build: .
    image: ngoduykhanh/wireguard-ui:latest
    container_name: wgui
    cap_add:
      - NET_ADMIN
    network_mode: service:wireguard
    environment:
      - SENDGRID_API_KEY
      - EMAIL_FROM_ADDRESS
      - EMAIL_FROM_NAME
      - SESSION_SECRET
      - SMTP_HOSTNAME=postal.kafana.dev
      - SMTP_PORT=2525
      - SMTP_USERNAME=kafana
      - SMTP_PASSWORD=some-password
      - SMTP_AUTH_TYPE=LOGIN # PLAIN, LOGIN, NONE
      - [email protected]
      - [email protected]
      - WGUI_USERNAME=username
      - WGUI_PASSWORD=password
      - WG_CONF_TEMPLATE
    logging:
      driver: json-file
      options:
        max-size: 50m
    volumes:
      - ./config:/app/db
      - ./config:/etc/wireguard

Links:

Back to top