wireguard_webadmin/docker-compose-no-nginx.yml

70 lines
2.0 KiB
YAML

version: '3'
services:
wireguard-webadmin:
container_name: wireguard-webadmin
restart: unless-stopped
image: eduardosilva/wireguard_webadmin:latest
environment:
- SERVER_ADDRESS=127.0.0.1
- DEBUG_MODE=True
- COMPOSE_VERSION=02r
- TZ=${TIMEZONE}
volumes:
- wireguard:/etc/wireguard
- static_volume:/app_static_files/
- dnsmasq_conf:/etc/dnsmasq
- app_secrets:/app_secrets/
- rrd_data:/rrd_data/
ports:
# Do not directly expose the Django port to the internet, use some kind of reverse proxy with SSL.
- "127.0.0.1:8000:8000"
# Warning: Docker will have a hard time handling large amount of ports. Expose only the ports that you need.
# Ports for multiple WireGuard instances. (Probably, you just need one)
- "51820-51839:51820-51839/udp"
# Ports for port forwarding rules. Add your own ports here if you need them.
- "8080-8089:8080-8089/tcp"
cap_add:
- NET_ADMIN
- SYS_MODULE
sysctls:
- net.ipv4.conf.all.src_valid_mark=1
- net.ipv4.ip_forward=1
command: /bin/bash /app/init.sh
wireguard-webadmin-cron:
container_name: wireguard-webadmin-cron
restart: unless-stopped
image: eduardosilva/wireguard_webadmin_cron:latest
environment:
- TZ=${TIMEZONE}
depends_on:
- wireguard-webadmin
wireguard-webadmin-rrdtool:
container_name: wireguard-webadmin-rrdtool
restart: unless-stopped
image: eduardosilva/wireguard_webadmin_rrdtool:latest
volumes:
- app_secrets:/app_secrets/
- rrd_data:/rrd_data/
environment:
- TZ=${TIMEZONE}
depends_on:
- wireguard-webadmin
wireguard-webadmin-dns:
container_name: wireguard-webadmin-dns
restart: unless-stopped
image: eduardosilva/wireguard_webadmin_dns:latest
environment:
- TZ=${TIMEZONE}
volumes:
- dnsmasq_conf:/etc/dnsmasq/
volumes:
static_volume:
wireguard:
dnsmasq_conf:
app_secrets:
rrd_data: