volumes: etc_wireguard: etc_certs: # save certifcate etc_acme: services: wg-easy: image: ghcr.io/wg-easy/wg-easy:15 container_name: wg-easy networks: - network-container volumes: - etc_wireguard:/etc/wireguard - /lib/modules:/lib/modules:ro ports: - "51820:51820/udp" - "51821:51821/tcp" restart: unless-stopped cap_add: - NET_ADMIN - SYS_MODULE sysctls: - net.ipv4.ip_forward=1 - net.ipv4.conf.all.src_valid_mark=1 - net.ipv6.conf.all.disable_ipv6=0 - net.ipv6.conf.all.forwarding=1 - net.ipv6.conf.default.forwarding=1 environment: - VIRTUAL_HOST=${WG_HOSTNAME_VPN} - LETSENCRYPT_HOST=${WG_HOSTNAME_VPN} - LETSENCRYPT_EMAIL=${EMAIL} - VIRTUAL_PORT=51821 depends_on: - nginx-proxy acme-companion: image: nginxproxy/acme-companion container_name: acme-companion restart: unless-stopped environment: - DEFAULT_EMAIL=${EMAIL} - NGINX_PROXY_CONTAINER=nginx-proxy depends_on: - nginx-proxy volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - etc_certs:/etc/nginx/certs - /etc/nginx/vhost.d - ./default_html:/usr/share/nginx/html - etc_acme:/etc/acme.sh networks: - network-container nginx-proxy: image: nginxproxy/nginx-proxy:alpine container_name: nginx-proxy restart: unless-stopped ports: - "80:80" - "443:443" volumes: - /var/run/docker.sock:/tmp/docker.sock:ro - etc_certs:/etc/nginx/certs - /etc/nginx/vhost.d - ./default_html:/usr/share/nginx/html networks: - network-container networks: network-container: external: false