Cross-repository links, docker-compose.yml/LICENSE deep links and the setup clone command now point to forge.chrislo.de instead of codeberg.org, following the move of the source repo hosting. |
||
|---|---|---|
| .env.example | ||
| .gitignore | ||
| CONTRIBUTING.md | ||
| docker-compose.traefik.example.yml | ||
| docker-compose.yml | ||
| LICENSE | ||
| README.de.md | ||
| README.md | ||
FediSuite Self-Hosting
This repository is for people who want to run FediSuite themselves with Docker Compose.
Project website: https://www.fedisuite.com
You do not need to build anything locally. You only need Docker, Docker Compose, and a .env file with your settings.
What Users Should Use
FediSuite currently has several important public URLs with different purposes.
- Project website / landing page: https://www.fedisuite.com
- Self-hosting repository: https://forge.chrislo.de/FediSuite/FediSuite-Self-Hosting
- FediSuite Plugins: https://forge.chrislo.de/FediSuite/FediSuite-Plugins-Repository
- Source code, bug reports and contributions: https://forge.chrislo.de/FediSuite/FediSuite-Docker-Image
- Published Docker image for self-hosters: https://hub.docker.com/r/christinloehner/fedisuite
In short:
- If you want to learn about FediSuite, start at the website.
- If you want to self-host FediSuite, use this repository with the deployment files.
- If you want to integrate plugins into your FediSuite, clone the plugins repo to ./plugins.
- If you want to report bugs or work on the application itself, use the
FediSuite-Docker-Imagerepository. - If you want the ready-to-run container image, use Docker Hub.
Bug Reporting and Contribution
If you find a bug or if you want to contribute, please either file a bug report or read the CONTRIBUTING.md here:
---> https://forge.chrislo.de/FediSuite/FediSuite-Docker-Image
Quick Start
git clone https://forge.chrislo.de/FediSuite/FediSuite-Self-Hosting.git fedisuite
cd fedisuite
cp .env.example .env
Edit .env and set at least these values:
FEDISUITE_IMAGEAPP_URLJWT_SECRETDATABASE_URLPOSTGRES_DBPOSTGRES_USERPOSTGRES_PASSWORDADMIN_EMAILADMIN_PASSWORDSMTP_HOSTSMTP_PORTSMTP_USERSMTP_PASSSMTP_FROM
ADMIN_EMAIL and ADMIN_PASSWORD are required on the first start. FediSuite creates the initial admin user from these values. If ADMIN_PASSWORD is missing, you will not be able to log in to the app afterward.
SMTP is also required. FediSuite sends emails for user registration, password reset, and historical import related flows after Fediverse accounts are connected. Do not leave the SMTP settings empty.
If you want to prevent new user sign-ups, set ENABLE_USER_REGISTRATION=false. The initial admin user from ADMIN_EMAIL and ADMIN_PASSWORD is still created on first start.
Then start FediSuite:
docker compose up -d
Open APP_URL in your browser after the containers are healthy.
Default Setup
The included docker-compose.yml starts four services:
db: PostgreSQL databaseapp: frontend and APIworker1: background jobsworker2: background jobs
The workers handle scheduled posts, refresh jobs, idle reminders, and tips generation.
Image Tags
The default .env.example uses this image tag:
christinloehner/fedisuite:latest
If you want to pin a specific release, replace latest with the tag you want to run.
Important Variables
Required:
FEDISUITE_IMAGEDATABASE_URLJWT_SECRETAPP_URLADMIN_EMAILADMIN_PASSWORDSMTP_HOSTSMTP_PORTSMTP_USERSMTP_PASSSMTP_FROMPOSTGRES_DBPOSTGRES_USERPOSTGRES_PASSWORD
Optional:
APP_NAMEPUBLIC_SITE_URLOUTBOUND_HTTP_USER_AGENTENABLE_USER_REGISTRATION
Traefik
If you use Traefik, you have two options:
- uncomment the example labels in
docker-compose.yml - use
docker-compose.traefik.example.ymlas a reference
Adjust the hostname, cert resolver, and network name to your environment.
Update
To update to newer image tags:
docker compose pull
docker compose up -d
Verify
To check that your configuration is valid before starting:
cp .env.example .env
docker compose config
License
FediSuite is licensed under the GNU GPL v3.0. See LICENSE.