volumes: etc_wireguard: etc_certs: backup_data: # 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 # synapse: # image: matrixdotorg/synapse:latest # container_name: synapse # restart: unless-stopped # networks: # - network-container # volumes: # - ./data:/data # environment: # - SYNAPSE_CONFIG_PATH=/data/homeserver.yaml # - VIRTUAL_HOST=notify.guezoloic.com # - LETSENCRYPT_HOST=notify.guezoloic.com # - LETSENCRYPT_EMAIL=${EMAIL} # - VIRTUAL_PORT=8008 # expose: # - "8008" volume-backup: image: offen/docker-volume-backup environment: BACKUP_NAME: etc_wireguard BACKUP_CRON_EXPRESSION: "0 3 * * *" S3_BUCKET: ${AWS} S3_ENDPOINT: ${ENDPOINT} AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY} volumes: - etc_wireguard:/backup:ro - backup_data:/archive networks: network-container: external: false