Skip to main content

Wireguard Easy

version: "3.3"
services:
  wg-easy:
    environment:
      # ⚠️ Required:
      # Change this to your host's public address
      - WG_HOST=public IP

      # Optional:
      - PASSWORD_HASH=  #see instructions bellow
      - WG_PORT=51820
      # - WG_DEFAULT_ADDRESS=10.8.0.x
      - WG_DEFAULT_DNS=1.1.1.1, 1.0.0.1
      # - WG_ALLOWED_IPS=192.168.15.0/24, 10.0.1.0/24
      
    image: ghcr.io/wg-easy/wg-easy
    container_name: wg-easy
    volumes:
      - /srv/path/Files/WG-Easy:/etc/wireguard
    ports:
      - "51820:51820/udp"
      - "51821:51821/tcp"
    restart: unless-stopped
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1

To generate password hash:

docker run -it ghcr.io/wg-easy/wg-easy wgpw YOUR_PASSWORD

Open port 51820 on router