mirror of https://github.com/wg-easy/wg-easy
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.2 KiB
65 lines
2.2 KiB
version: "3.8"
|
|
|
|
services:
|
|
wg-easy:
|
|
image: ghcr.io/wg-easy/wg-easy
|
|
container_name: wg-easy
|
|
hostname: wg-easy
|
|
environment:
|
|
# ⚠️ Required: Change this to your host's public address (clients will connect to this hostname):
|
|
- WG_HOST=wg-easy.myhomelab.com
|
|
|
|
# ⚠️ Required: Set the Web UI Password Hash:
|
|
# Generate the bcrypt hash from: https://bcrypt-generator.com/
|
|
- PASSWORD_HASH=$2a$10$exampleHashHere # Replace with your actual bcrypt hash
|
|
|
|
# Optional: Set the language for the Web UI (default: en):
|
|
# (Supports: en, ua, ru, tr, no, pl, fr, de, ca, es, ko, vi, nl, is, pt, chs, cht, it, th, hi, ja, si)
|
|
- LANG=en
|
|
|
|
# Optional: Customize ports and network configuration
|
|
# - WG_PORT=51820
|
|
# - WG_CONFIG_PORT=92820
|
|
# - WG_DEFAULT_ADDRESS=10.8.0.x
|
|
# - WG_DEFAULT_DNS=1.1.1.1
|
|
# - WG_MTU=1420
|
|
# - WG_ALLOWED_IPS=192.168.15.0/24,10.0.1.0/24
|
|
# - WG_PERSISTENT_KEEPALIVE=25
|
|
# - WG_PRE_UP=echo "Pre Up" > /etc/wireguard/pre-up.txt
|
|
# - WG_POST_UP=echo "Post Up" > /etc/wireguard/post-up.txt
|
|
# - WG_PRE_DOWN=echo "Pre Down" > /etc/wireguard/pre-down.txt
|
|
# - WG_POST_DOWN=echo "Post Down" > /etc/wireguard/post-down.txt
|
|
# - WG_ENABLE_ONE_TIME_LINKS=true
|
|
# - WG_ENABLE_EXPIRES_TIME=true
|
|
|
|
# Optional: Enable traffic stats in the UI
|
|
# - UI_TRAFFIC_STATS=true
|
|
# - UI_CHART_TYPE=0 # (0=Charts disabled, 1=Line chart, 2=Area chart, 3=Bar chart)
|
|
|
|
# Optional: Enable Prometheus metrics (disable by default)
|
|
# - ENABLE_PROMETHEUS_METRICS=false
|
|
# - PROMETHEUS_METRICS_PASSWORD=$$2a$$12$$examplePrometheusHash # Double $$ for bcrypt password
|
|
|
|
volumes:
|
|
- ~/.wg-easy:/etc/wireguard
|
|
ports:
|
|
- "51820:51820/udp"
|
|
restart: unless-stopped
|
|
cap_add:
|
|
- NET_ADMIN
|
|
- SYS_MODULE
|
|
sysctls:
|
|
- net.ipv4.ip_forward=1
|
|
- net.ipv4.conf.all.src_valid_mark=1
|
|
|
|
nginx:
|
|
image: weejewel/nginx-with-certbot
|
|
container_name: nginx
|
|
hostname: nginx
|
|
volumes:
|
|
- ~/.nginx/servers/:/etc/nginx/servers/
|
|
- ./.nginx/letsencrypt/:/etc/letsencrypt/
|
|
ports:
|
|
- "80:80/tcp"
|
|
- "443:443/tcp"
|
|
restart: unless-stopped
|
|
|