Skip to content

Instantly share code, notes, and snippets.

@smiell
Created August 28, 2023 18:37
Show Gist options
  • Save smiell/02529b4e22ca52518134dee09de75bc4 to your computer and use it in GitHub Desktop.
Save smiell/02529b4e22ca52518134dee09de75bc4 to your computer and use it in GitHub Desktop.
version: "3"
services:
# WireGuard VPN service
wireguard:
image: linuxserver/wireguard:latest
restart: always
container_name: wireguard
cap_add:
- NET_ADMIN
volumes:
- /opt/wireguard/config:/config
ports:
# Port for WireGuard-UI
- "5000:5000"
# Port of the WireGuard VPN server
- "669696:669696/udp"
# WireGuard-UI service
wireguard-ui:
image: ngoduykhanh/wireguard-ui:latest
restart: always
container_name: wireguard-ui
depends_on:
- wireguard
cap_add:
- NET_ADMIN
# Use the network of the 'wireguard' service
# This enables to show active clients in the status page
network_mode: service:wireguard
environment:
- SENDGRID_API_KEY
- EMAIL_FROM_ADDRESS
- EMAIL_FROM_NAME
- SESSION_SECRET
- WGUI_USERNAME=admin
- WGUI_PASSWORD=password
- WG_CONF_TEMPLATE
- WGUI_MANAGE_START=true
- WGUI_MANAGE_RESTART=true
- SMTP_HOSTNAME=mail0.small.pl
- SMTP_PORT=25
- SMTP_USERNAME="example@smiel.pl"
- SMTP_PASSWORD="SMPTPASS"
logging:
driver: json-file
options:
max-size: 50m
volumes:
- /opt/wiregaurd-ui/db:/app/db
- /opt/wireguard/config:/etc/wireguard
networks:
bridge:
external: true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment