diff --git a/caddy/Caddyfile b/caddy/Caddyfile index bfe53a9..6367fb5 100644 --- a/caddy/Caddyfile +++ b/caddy/Caddyfile @@ -1,6 +1,6 @@ { debug - email {$PDS_ADMIN_EMAIL:404@vielle.dev} + email {$ADMIN_EMAIL:404@vielle.dev} on_demand_tls { ask http://pi:8000/tls-check } @@ -126,12 +126,16 @@ dnd.{$HOST:vielle.dev} { ## atproto services ### pds -pds.{$HOST:vielle.dev} { +pds.{$HOST:vielle.dev}, *.pds.{$HOST:vielle.dev}, *.at.{$HOST:vielle.dev}, *.at.{$DONG_HOST:dongs.zip} { log pds { output stdout format console } + tls { + on_demand + } + rewrite / /pds @landing path /pds /styles.css reverse_proxy @landing landing:8000 @@ -144,30 +148,22 @@ pds.{$HOST:vielle.dev} { respond `{"state":{"lastInitiatedAt":"2025-07-14T14:22:43.912Z","status":"assured","access":"full"},"metadata":{"accountCreatedAt":"2022-11-17T00:35:16.391Z"}}` 200 } - reverse_proxy {$PI_ADDRESS:pi}:8000 { - transport http { - dial_timeout 5s - } - } -} - -*.pds.{$HOST:vielle.dev} { - log pds-did { - output stdout - format console - } - - tls { - on_demand + # pds gatekeeper + @gatekeeper { + path /xrpc/com.atproto.server.getSession + path /xrpc/com.atproto.server.describeServer + path /xrpc/com.atproto.server.updateEmail + path /xrpc/com.atproto.server.createSession + path /xrpc/com.atproto.server.createAccount + path /@atproto/oauth-provider/~api/sign-in + path /gate/* } - # required as magicDNS (tailscale) doesn't support - # subdomains without running own dns server - # changes example.PDS_DOMAIN/.well-known/atproto-did to PDS_DOMAIN/.well-known/atproto-did/example.PDS_DOMAIN - # requires support in the pds (see https://tangled.org/vielle.dev/pi-config) - rewrite /.well-known/atproto-did /.well-known/atproto-did/{http.request.host} + handle @gatekeeper { + reverse_proxy {$PDS_GATEKEEPER} + } - reverse_proxy {$PI_ADDRESS:pi}:{$PI_PORT_PDS:8000} { + reverse_proxy {$ADDR_PDS} { transport http { dial_timeout 5s } @@ -186,7 +182,7 @@ knot.{$HOST:vielle.dev} { @landing path /knot /styles.css reverse_proxy @landing landing:8000 - reverse_proxy {$PI_ADDRESS:pi}:{$PI_PORT_KNOT:5555} + reverse_proxy {$ADDR_KNOT} } ### piper instance @@ -197,5 +193,5 @@ piper.{$HOST:vielle.dev} { format console } - reverse_proxy {$PI_ADDRESS:pi}:{$PO_PORT_PIPER:8010} + reverse_proxy {$ADDR_PIPER} } diff --git a/commit.sh b/commit.sh index afea3c8..59e9220 100755 --- a/commit.sh +++ b/commit.sh @@ -8,7 +8,7 @@ git fetch --all echo "git reset --hard origin/master" git reset --hard origin/master -echo "cat < /dev/null" docker system prune -af > /dev/null -echo "cat <<- BODY | curl -d @- http://compuper:6500/notify" +echo "curl -d ready http://compuper:6500/notify" cat <<- BODY | curl -d @- http://compuper:6500/notify name=vps%3A%20ready%20($(git log -1 --pretty=format:%h))\ &timeout=5000 diff --git a/compose.yaml b/compose.yaml index 715cf3f..7593064 100644 --- a/compose.yaml +++ b/compose.yaml @@ -35,11 +35,11 @@ services: environment: HOST: vielle.dev DONG_HOST: dongs.zip - PDS_ADMIN_EMAIL: admin@vielle.dev - PI_ADDRESS: "100.84.64.24" - PI_PORT_PDS: 8000 - PI_PORT_KNOT: 5555 - PI_PORT_PIPER: 8010 + ADMIN_EMAIL: admin@vielle.dev + ADDR_PDS: 100.84.64.24:8000 + ADDR_PDS_GATEKEEPER: 100.84.64.24:8001 + ADDR_KNOT: 100.84.64.24:5555 + ADDR_PIPER: 100.84.64.24:8010 depends_on: - prs - landing