pds-home#
This is a static homepage for my Personal Data Server, pds.jeanmachine.dev.
My PDS uses the typescript implementation provided by Bluesky PBC, and uses their container image. To set this up, I made the following changes to my Caddyfile (located at /pds/caddy/etc/caddy/Caddyfile) and Docker compose file (locatede at /pds/compose.yaml). I store this repository at /pds/static on my PDS server.
Caddyfile:
# important to seperate the wildcard from the root.
*.pds.jeanmachine.dev {
tls {
on_demand
}
reverse_proxy http://localhost:3000
}
pds.jeanmachine.dev {
tls {
on_demand
}
# this is where I store the static site.
@static path / /index.css /favicon.ico /assets/* /fonts/*
handle @static {
root * /static
file_server
}
# handle everything that isnt the static site/it's assets with the regular proxy
handle {
reverse_proxy http://localhost:3000
}
}
Docker Compose:
volumes:
- type: bind
source: /pds/caddy/data
target: /data
- type: bind
source: /pds/caddy/etc/caddy
target: /etc/caddy
- type: bind # this is the new binding in my compose; everything else is the same.
source: /pds/static
target: /static