Code, configuration, and documentation to support network-local development environments
README.md

PDS#

Configuration#

This is a fully operational Jetstream and needs appropriate configuration.

Copy the env.example file to env and update the following entry "PLACEHOLDER" values.

  • PDS_HOSTNAME value updated to relflect your internal tailnet

Copy docker-compose.example.yml to docker-compose.yml and make the following changes:

  • Optional, set the TS_AUTHKEY if you are using one.

Jetstream Container#

You will need a built jetstream container.

  1. Clone the jetstream project:

    git clone https://github.com/bluesky-social/jetstream.git

  2. Build and tag the container:

    docker build -t jetstream .

Operation#

  1. Create the configuration file and update it accordingly.

  2. Bring networking up.

    docker compose up tailscale -d

    If you are using dynamic machine authentication, you'll need to view the logs and click on the link.

    docker compose logs tailscale

  3. Generate an SSL certificate for the node. Be sure to change internal.ts.net to whatever your Tailnet name is (i.e. sneaky-fox.ts.net)

    docker compose exec tailscale /bin/sh -c "tailscale cert --cert-file /mnt/tls/cert.pem --key-file /mnt/tls/cert.key jetstream.internal.ts.net"

  4. Bring the app and proxy up.

    docker compose up -d

Usage#

Jetstream will be available at https://jetstream.internal.ts.net/.

Test with websocat wss://jetstream.internal.ts.net/subscribe