Files
Portainer/wireguard/docker-compose.yml
root 5617b29fcf fix: replace variable bind mounts with hardcoded paths/named volumes
Coolify converts ${VAR}:/path bind mounts to named Docker volumes when
the variable is not resolved. Fixed per stack:

- adguard: -> named volumes (data already in Coolify-created volumes)
- authentik: -> named volumes (data already in Coolify-created volumes)
- gitea: -> /opt/gitea/{postgres,data,runner}
- mail-relay: -> /opt/mail-relay/{queue,opendkim,secrets/...}
- media-server: COMMON_PATH -> /opt/media (hardcoded)
- trilium: -> /opt/trilium/data
- wireguard: -> /opt/wg-easy + /lib/modules

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-23 02:09:08 +00:00

46 lines
989 B
YAML

services:
wg-easy:
image: ${WG_EASY_IMAGE}
container_name: wg-easy
pull_policy: always
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
sysctls:
net.ipv4.ip_forward: "1"
net.ipv4.conf.all.src_valid_mark: "1"
environment:
WG_HOST: ${WG_HOST}
WG_PORT: ${WG_PORT}
PORT: ${WG_UI_PORT}
# Arranque desatendido (solo si el volumen está vacío)
INIT_ENABLED: ${INIT_ENABLED}
INIT_USERNAME: ${INIT_USERNAME}
INIT_PASSWORD: ${INIT_PASSWORD}
# Evita reglas ip6tables (tabla nat inexistente en el host)
DISABLE_IPV6: ${DISABLE_IPV6}
volumes:
- /opt/wg-easy:/etc/wireguard:Z
- /lib/modules:/lib/modules:ro,Z
# Puerto UDP de WireGuard expuesto al mundo
ports:
- "${WG_UDP_PORT}:${WG_PORT}/udp"
networks:
- proxy
labels:
traefik.http.services.wg.loadbalancer.server.port: "${WG_UI_PORT}"
networks:
proxy:
external: true