124 lines
3.1 KiB
YAML
124 lines
3.1 KiB
YAML
services:
|
|
# ==========================
|
|
# Vaultwarden (Password manager)
|
|
# ==========================
|
|
vaultwarden:
|
|
image: vaultwarden/server:latest
|
|
container_name: vaultwarden
|
|
restart: always
|
|
volumes:
|
|
- ./services/vaultwarden:/data
|
|
environment:
|
|
DOMAIN: "https://vault.example.com" # Change to yours
|
|
|
|
# ==========================
|
|
# 2FAuth (2FA manager)
|
|
# ==========================
|
|
2fauth:
|
|
image: 2fauth/2fauth:latest
|
|
container_name: 2fauth
|
|
restart: always
|
|
volumes:
|
|
- ./services/2fauth:/data
|
|
environment:
|
|
- APP_NAME=2FAuth
|
|
- APP_ENV=production
|
|
- APP_DEBUG=false
|
|
- APP_TIMEZONE=Europe/Helsinki
|
|
- SITE_OWNER=admin@example.com # Change to yours
|
|
- APP_KEY=SomeRandomStringOf32CharsExactly # Change to yours
|
|
- APP_URL=https://auth.example.com # Change to yours
|
|
- ASSET_URL=https://auth.example.com # Change to yours
|
|
- TRUSTED_PROXIES=*
|
|
- LOG_CHANNEL=daily
|
|
- LOG_LEVEL=notice
|
|
networks:
|
|
- default
|
|
|
|
# ==========================
|
|
# Caddy (Reverse proxy)
|
|
# ==========================
|
|
caddy:
|
|
image: caddy:2
|
|
container_name: caddy
|
|
restart: always
|
|
ports:
|
|
- 80:80
|
|
- 443:443
|
|
- 443:443/udp
|
|
volumes:
|
|
- ./caddy:/usr/bin/caddy
|
|
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
|
- ./caddy-config:/config
|
|
- ./caddy-data:/data
|
|
environment:
|
|
# For Caddy: hostnames only, no https://
|
|
VAULT_DOMAIN: "vault.example.com" # Change to yours
|
|
AUTH_DOMAIN: "auth.example.com" # Change to yours
|
|
EMAIL: "admin@example.com" # Change to yours
|
|
DUCKDNS_TOKEN: "TOKEN" # Change to yours
|
|
LOG_FILE: "/data/access.log"
|
|
|
|
# ==========================
|
|
# Portainer (Docker manager)
|
|
# ==========================
|
|
portainer:
|
|
image: portainer/portainer-ce:latest
|
|
container_name: portainer
|
|
restart: always
|
|
ports:
|
|
- 9443:9443
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- ./services/portainer:/data
|
|
|
|
# ==========================
|
|
# Uptime Kuma (uptime monitor)
|
|
# ==========================
|
|
uptimekuma:
|
|
image: louislam/uptime-kuma:latest
|
|
container_name: uptime-kuma
|
|
restart: always
|
|
ports:
|
|
- 3001:3001
|
|
volumes:
|
|
- ./services/uptimekuma:/app/data
|
|
|
|
# ==========================
|
|
# Dozzle (live logs viewer)
|
|
# ==========================
|
|
dozzle:
|
|
image: amir20/dozzle:latest
|
|
container_name: dozzle
|
|
restart: always
|
|
ports:
|
|
- 9999:8080
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
# ==========================
|
|
# Netdata (system monitoring)
|
|
# ==========================
|
|
netdata:
|
|
image: netdata/netdata:latest
|
|
container_name: netdata
|
|
restart: always
|
|
ports:
|
|
- 19999:19999
|
|
cap_add:
|
|
- SYS_PTRACE
|
|
security_opt:
|
|
- apparmor:unconfined
|
|
volumes:
|
|
- ./services/netdata/config:/etc/netdata
|
|
- ./services/netdata/lib:/var/lib/netdata
|
|
- ./services/netdata/cache:/var/cache/netdata
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- /proc:/host/proc:ro
|
|
- /sys:/host/sys:ro
|
|
|
|
networks:
|
|
default:
|
|
driver: bridge
|
|
|