📄 | .gitignore |
📄 | Dockerfile |
📄 | LICENSE |
📄 | README.md |
📄 | docker-compose.yaml |
📄 | package.json |
📁 | pages |
📄 | screenshot.png |
📁 | src |
📄 | tsconfig.json |
Easy Secure Scuttlebutt Pub
easy-ssb-pub
is an easy-to-host server that runs an SSB "Pub".
Secure Scuttlebutt (SSB) is an impressive peer-to-peer network that can be used for metadata, identity, and particularly, messaging. SSB is an ideal protocol for a social network. There is already a social network on SSB, called Patchwork.
However, to join the wider SSB network, you must get a dedicated invitation from a "Pub" server. Also, hosting a Pub server is not the easiest task. In order to improve adoption of SSB, this project makes it easy to deploy an SSB Pub. Once the Pub is running, it has a light frontend page where anyone can get freely request a fresh invitation.
Visit one of these
If you want to visit an Easy SSB Pub, here are a few known links (potentially ephemeral or broken):
How to deploy
You will need a server that supports a TCP sockets on port 80 and UDP sockets on ports 8008 and 8007. This means Heroku or Zeit Now will not work. Recommended services for servers-on-demand: Digital Ocean Docker Droplet, UpCloud, Amazon LightSail, Vultr, Linode, etc.
- Access your server via shell (e.g. SSH)
docker pull staltz/easy-ssb-pub
docker run -e "PUB_URL=publicurltoyourserv.er" -v $HOME/.ssb:/root/.ssb -p 80:80 -p 8008:8008 -p 8007:8007 -m 450M --memory-swap 1G --restart=unless-stopped --name ssb-pub -d staltz/easy-ssb-pub
After the container has been created, stop/start/restart the server using:
docker stop ssb-pub
docker start ssb-pub
docker restart ssb-pub
docker run
creates a new container (and server key) each time. This prevents existing contacts from successfully completing the handshake.
OR
- Acess your server via shell (e.g. SSH)
git clone https://github.com/staltz/easy-ssb-pub.git
cd easy-ssb-pub
PUB_URL=publicurltoyourserv.er docker-compose up -d
OR
- Access your server via shell (e.g. SSH)
apt-get install -y libleveldb-dev curl libc6 libcurl3 zlib1g libtool autoconf
- Install nvm:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
- Restart the shell
nvm install v6.9.1
git clone https://github.com/staltz/easy-ssb-pub.git
npm install
PUB_URL=publicurltoyourserv.er npm start
Built with git-ssb-web