- NIP-50: you can search profiles.
- You can directly send your profile update/deletion to it.
- It scrape new profiles.
- Optional Blossom server to host profile pictures and banners.
- NIP-86: Ban specific profiles/Check reported ones.
Here's an adapted Setup section considering that you'll push the base image to Docker Registry, allowing users to pull and run it easily.
The easiest way to run Pages is by using the prebuilt image:
-
Pull the latest image
docker pull dezhtech/pages
-
Run Pages with environment variables
docker run -d --name pages \ -p 3334:3334 \ -e RELAY_NAME="pages" \ -e RELAY_PUBKEY="your_pubkey" \ -e RELAY_DESCRIPTION="Specialized Nostr Relay For AppStores" \ -e RELAY_URL="wss://jellyfish.land" \ -e RELAY_ICON="https://your-icon-url.png" \ -e RELAY_BANNER="https://your-banner-url.png" \ -e RELAY_CONTACT="https://dezh.tech" \ -e WORKING_DIR="pages_wd/" \ -e RELAY_PORT=":3334" \ -e ADMIN_PUBKEYS="" \ -e DISC_RELAYS="nos.lol,purplepag.es,relay.nostr.lol,jellyfish.land,relay.primal.net,nostr.mom,nostr.wine,nostr.land" \ dezhtech/pages
For a more structured deployment, use Docker Compose:
-
use
compose.yml
use the exist compose file in the pages directory -
Run with Compose
docker-compose up -d
Modify the env
variables in .env
file, docker compose file or docker command to customize settings:
RELAY_NAME
– The name of the relay (default:pages
).RELAY_PUBKEY
– The owner's hex key (convertnpub
to hex here).RELAY_DESCRIPTION
– A short description of the relay.RELAY_URL
– WebSocket URL for the relay (e.g.,wss://abc.com
).RELAY_ICON
– URL to the relay's icon.RELAY_BANNER
– URL to the relay's banner image.RELAY_CONTACT
– Contact URL (e.g.,https://dezh.tech
).
WORKING_DIR
– Configuration working directory (default:pages_wd
).
RELAY_PORT
– Port on which the relay listens (default::3334
).
ADMIN_PUBKEYS
– Comma-separated list of allowed public keys.
Pull requests are welcome! Feel free to open an issue if you have feature requests or find bugs.
This software is published under MIT License.