mirror of
https://github.com/guezoloic/serverconfig.git
synced 2026-01-25 07:34:23 +00:00
104 lines
2.5 KiB
YAML
104 lines
2.5 KiB
YAML
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 |