commit 7927f9d70bd49f2b39ed5770b9e5a27b99d5b367 Author: Gbanyan Date: Tue Feb 18 16:39:47 2025 +0800 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c6a0850 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +.env +vw-data +caddy-data +caddy-config diff --git a/Caddyfile b/Caddyfile new file mode 100644 index 0000000..9bea89a --- /dev/null +++ b/Caddyfile @@ -0,0 +1,16 @@ +{$DOMAIN} { + log { + level INFO + output file {$LOG_FILE} { + roll_size 10MB + roll_keep 10 + } + } + + tls { + dns cloudflare {$CF_API_TOKEN} + } + encode zstd gzip + + reverse_proxy vaultwarden:80 +} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..e0e0e62 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,30 @@ +services: + vaultwarden: + image: vaultwarden/server:latest + container_name: vaultwarden + restart: unless-stopped + environment: + DOMAIN: "https://vault.gbanyan.net" + SIGNUPS_ALLOWED: "false" + volumes: + - ./vw-data:/data + + caddy: + env_file: + - .env + image: ghcr.io/caddybuilds/caddy-cloudflare:latest + container_name: caddy + restart: unless-stopped + ports: + - 80:80 + - 443:443 + - 443:443/udp + volumes: + - ./Caddyfile:/etc/caddy/Caddyfile:ro + - ./caddy-config:/config + - ./caddy-data:/data + environment: + DOMAIN: "https://vault.gbanyan.net" + EMAIL: CLOUDFARE_EMAIL + CF_API_TOKEN: CLOUDFLARE_DNS_API_TOKEN + LOG_FILE: "/data/access.log"