pfannkuchen/compose.yaml
2026-03-25 20:47:01 +01:00

82 lines
2.1 KiB
YAML

networks:
proxy_network:
enable_ipv6: true
name: proxy_network
services:
caddy:
image: caddy
container_name: caddy
restart: unless-stopped
networks:
- proxy_network
ports:
- 80:80
- 443:443/tcp
- 443:443/udp
- 10.200.200.254:8888:8888
- 8448:8448
expose:
- 2019
volumes:
- /app-config/caddy/data:/data
- /app-config/caddy/Caddyfile:/etc/caddy/Caddyfile
- /app-config/caddy/logs:/var/log/caddy
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
expose:
- 80
environment:
DOMAIN: "https://vault.sascha-lutz.de" # Your domain; vaultwarden needs to know it's https to work properly with attachments
SIGNUPS_ALLOWED: "false"
INVITATIONS_ALLOWED: "false"
LOG_FILE: "/var/log/vaultwarden.log"
volumes:
- /app-config/vw-data:/data
networks:
- proxy_network
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
restart: always
ports:
- 10.200.200.254:8000:3000
volumes:
- /app-config/homepage/:/app/config # Make sure your local config directory exists
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations, see alternative methods
environment:
HOMEPAGE_ALLOWED_HOSTS: 10.200.200.254:8000 # required, may need port. See gethomepage.dev/installation/#homepage_allowed_hosts
PUID: 1000
PGID: 1000
networks:
- proxy_network
wg-easy:
image: ghcr.io/wg-easy/wg-easy:latest
container_name: wg-easy
environment:
- WG_HOST=vpn.sascha-lutz.de
- WG_PORT=51821
volumes:
- /app-config/wg-easy/:/etc/wireguard
- /lib/modules:/lib/modules:ro
networks:
- proxy_network
ports:
- "51821:51821/udp"
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