forked from
tangled.org/core
fork
Configure Feed
Select the types of activity you want to include in your feed.
Monorepo for Tangled
fork
Configure Feed
Select the types of activity you want to include in your feed.
spindle self-hosting guide#
prerequisites#
- Go
- Docker (the only supported backend currently)
configuration#
Spindle is configured using environment variables. The following environment variables are available:
SPINDLE_SERVER_LISTEN_ADDR: The address the server listens on (default:"0.0.0.0:6555").SPINDLE_SERVER_DB_PATH: The path to the SQLite database file (default:"spindle.db").SPINDLE_SERVER_HOSTNAME: The hostname of the server (required).SPINDLE_SERVER_JETSTREAM_ENDPOINT: The endpoint of the Jetstream server (default:"wss://jetstream1.us-west.bsky.network/subscribe").SPINDLE_SERVER_DEV: A boolean indicating whether the server is running in development mode (default:false).SPINDLE_SERVER_OWNER: The DID of the owner (required).SPINDLE_PIPELINES_NIXERY: The Nixery URL (default:"nixery.tangled.sh").SPINDLE_PIPELINES_WORKFLOW_TIMEOUT: The default workflow timeout (default:"5m").SPINDLE_PIPELINES_LOG_DIR: The directory to store workflow logs (default:"/var/log/spindle").
running spindle#
-
Set the environment variables. For example:
export SPINDLE_SERVER_HOSTNAME="your-hostname" export SPINDLE_SERVER_OWNER="your-did" -
Build the Spindle binary.
cd core go mod download go build -o cmd/spindle/spindle cmd/spindle/main.go -
Create the log directory.
sudo mkdir -p /var/log/spindle sudo chown $USER:$USER -R /var/log/spindle -
Run the Spindle binary.
./cmd/spindle/spindle
Spindle will now start, connect to the Jetstream server, and begin processing pipelines.