You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Named subnet ranges (e.g. LAN:10.0.0.0/24;REMOTE:192.168.0.0/24)
Client Defaults
Variable
Description
Default
WGUI_DEFAULT_CLIENT_ALLOWED_IPS
Default allowed IPs for new clients
0.0.0.0/0
WGUI_DEFAULT_CLIENT_EXTRA_ALLOWED_IPS
Default extra allowed IPs
WGUI_DEFAULT_CLIENT_USE_SERVER_DNS
Use server DNS by default
true
Email (SMTP)
Variable
Description
Default
SMTP_HOSTNAME
SMTP server hostname
127.0.0.1
SMTP_PORT
SMTP server port
25
SMTP_USERNAME
SMTP username
SMTP_PASSWORD
SMTP password
SMTP_PASSWORD_FILE
File containing SMTP password
SMTP_HELO
SMTP HELO hostname
localhost
SMTP_ENCRYPTION
NONE, SSL, SSLTLS, TLS, STARTTLS
STARTTLS
SMTP_AUTH_TYPE
PLAIN, LOGIN, NONE
NONE
EMAIL_FROM_ADDRESS
Sender email address
EMAIL_FROM_NAME
Sender display name
WireGuard UI
Email (SendGrid)
Variable
Description
Default
SENDGRID_API_KEY
SendGrid API key
SENDGRID_API_KEY_FILE
File containing SendGrid API key
Container Management
Variable
Description
Default
WGUI_MANAGE_START
Start WireGuard when container starts
false
WGUI_MANAGE_RESTART
Restart WireGuard when config changes
false
Health Check
A health endpoint is available at /_health (or {BASE_PATH}/_health when using a base path). It returns 200 OK with body ok and requires no authentication.
curl http://localhost:5000/_health
Development
# Install dependencies
make deps && make deps-frontend
# Start Go backend (port 5000)
make dev
# Start frontend dev server with hot reload (port 5173)
make dev-frontend
# Run all tests
make test# Run linters
make lint
# Build everything
make build
# Build Docker image
make docker-build
Available Make Targets
make help Show all commands
make build Build frontend + Go binary
make test Run all tests with coverage
make lint Run Go + frontend linters
make dev Start Go backend
make dev-frontend Start Vite dev server
make docker-build Build Docker image
make coverage-html Open coverage report in browser