rebased-podman/README.md

60 lines
3.7 KiB
Markdown
Raw Permalink Normal View History

2022-11-11 21:34:47 +01:00
# Rebased
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
[Rebased](https://soapbox.pub/2022/08/19/soapbox-be-is-now-rebased/) is a federated social networking
platform, compatible with Mastodon, Pleroma, GNU Social, and other ActivityPub implementations. It is free software licensed uner the AGPLv3
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
It actually consists of two components: a backend, named Rebased, and a user-facing frontend, named Soapbox.
2022-03-16 16:21:51 +01:00
Its main advantages are its lightness and speed.
2022-11-11 21:34:47 +01:00
![Rebased](https://media.soapbox.pub/uploads/2022/08/signal-2022-08-18-153539_002.png)
2022-03-16 16:21:51 +01:00
## Features
This podman set up build and creates a Rebased container image using Alpine Linux.
Working through each script will allow you to set up your own Rebased server.
For a more "official" set up, please use the `ubuntu` branch of this repo which builds the image directly using Rebased's own Dockerfile.
2022-03-16 16:21:51 +01:00
## Build-time variables
2022-11-11 21:34:47 +01:00
Variables are entered into `script_config.sh` - (copy `script_config_sample.sh`),
the key variables being `PG_USER`, `PG_PASS`, `PG_HOST`, `PG_NAME` if you have a database running elsewhere
2022-03-16 16:21:51 +01:00
### Installation
2022-11-11 21:34:47 +01:00
Each script is numbered which give the order in which they need to be run - scripts with `5` in the name should only need to be run once.
2022-11-11 21:45:08 +01:00
1. `00-create-pod.sh` - this creates a simple pod, in which the other containers will exist. It will also open port 5000 for incoming web access and map the folders in which persistent data will reside.
2. `10-build-rebased.sh` - this will clone the current develop git repo and build an image from it. Re-running this script will effectively update the version of Rebased. This may take 10 minutes or so to run as it compiles the software.
3. `20-create-db.sh` - this will create a postgres container in which the database will exist
4. `30-run-rebased.sh` - this creates the main Rebased container and starts the web server on port 5000 (you'll need a reverse proxy (HAProxy, httpd, nginx, etc.) to publish it). At start up, this will check the database and create the appropriate tables and extensions so things will work.
5. `35-gen-config.sh` - YOU SHOULD ONLY NEED TO RUN THIS ONCE. Will generate a `generated_config.exs` file. Make sure you set the port number correctly (5000, not 4000). Once generated, it should be renamed to `prod.secret.exs` to make it available at run-time
6. at this point you should re-run `30-run-rebased.sh`
7. Now, you're instance should be running on your device at port 5000 - test it and find out.
8. `40-install-soapbox.sh` - this installs the [Soapbox](https://soapbox.pub/) front end - which is where you will log in and ultimately use the system.
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
Once the above steps are complete, you're nearly ready to go! The final steps are to
1. Create your admin user
2. Configure your reverse proxy
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
### Create your admin user
You'll need to create an admin user so you can log in and configure more users and settings.
Simply run
2022-03-16 16:21:51 +01:00
```sh
2022-11-11 21:34:47 +01:00
podman exec rebased-web /opt/pleroma/bin/pleroma_ctl user new <username> <email@address.com> --admin
2022-03-16 16:21:51 +01:00
```
2022-11-11 21:34:47 +01:00
This will generate the user, set it up as admin, and provide a password reset link. Go to this password reset link to set the new password and you're done!
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
#### Configure your reverse proxy
This will differ from device to device - but check some of the configs in the [Rebased GitLab Repo](https://gitlab.com/soapbox-pub/rebased/-/tree/develop/installation) for further information.
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
### Congratulations!
If all has gone well, you should be done. Well done. Now get out there and talk to some people!
2022-03-16 16:21:51 +01:00
2022-03-16 16:46:38 +01:00
## Final Notes
2022-03-16 16:21:51 +01:00
2022-11-11 21:34:47 +01:00
As with anything, I've only tested this on my systems, I have tried my best to re-run these scripts to ensure all events are covered, but I may have missed some.
If you do have troubles, either create an issue here, or contact me on the Fediverse at
[@paul@notnull.click](https://notnull.click/@paul) and I'll try to help.
2022-03-16 16:21:51 +01:00