2023-06-13 01:24:19 -03:00
version : "3.8"
services :
2023-06-13 17:13:36 -03:00
wireguard :
image : linuxserver/wireguard:latest
container_name : wireguard
2023-06-13 01:24:19 -03:00
cap_add :
- NET_ADMIN
- SYS_MODULE
sysctls :
- net.ipv4.ip_forward=1
2023-06-13 17:13:36 -03:00
- net.ipv4.conf.all.src_valid_mark=1
volumes :
- ./config:/config
ports :
# port for wireguard-ui. this must be set here as the `wireguard-ui` container joins the network of this container and hasn't its own network over which it could publish the ports
- "5000:5000"
# port of the wireguard server
2023-06-13 18:38:57 -03:00
- "51821:51821/udp"
2023-06-13 18:27:21 -03:00
environment :
- PEERS
2023-06-13 18:38:57 -03:00
- SERVERPORT=51821
2023-06-13 17:13:36 -03:00
wireguard-ui :
image : ngoduykhanh/wireguard-ui:latest
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=admin
- WG_CONF_TEMPLATE
- WGUI_MANAGE_START=true
- WGUI_MANAGE_RESTART=true
logging :
driver : json-file
options :
max-size : 50m
volumes :
- ./db:/app/db
- ./config:/etc/wireguard