Installation

Voraussetzungen

Bevor du FediSuite installierst, stelle sicher, dass du alles Nötige parat hast. Die Anforderungen sind überschaubar: ein kleiner Linux-Server mit Docker, eine Domain, ein Reverse Proxy für HTTPS und ein Postfach für ausgehende E-Mails.

Server oder VPS

FediSuite läuft vollständig über Docker Compose. Ein kleiner Linux-Server oder eine Cloud-VPS genügt, eigene Hardware funktioniert genauso. Die Images gibt es für linux/amd64 und linux/arm64.

Kleine Instanz (Richtwert)

  • 1 vCPU
  • 1 GB RAM
  • 20 GB Speicher
  • Öffentliche IPv4-Adresse

Empfohlen (Richtwert)

  • 2 vCPU
  • 2 GB RAM
  • 40 GB Speicher
  • SSD-Storage

Die Werte sind grobe Richtwerte und keine geprüften Mindestanforderungen. Der tatsächliche Bedarf hängt von der Zahl der Nutzer*innen, der verbundenen Konten und der Menge an Beiträgen und Anhängen ab. Im Stack laufen vier Container: PostgreSQL, die App und zwei Worker.

Betriebssystem: Eine aktuelle Ubuntu-LTS- oder Debian-Version eignet sich gut. Andere Linux-Distributionen funktionieren ebenfalls, solange Docker mit Compose v2 läuft. Windows und macOS sind für den Produktivbetrieb nicht vorgesehen.

Domain & DNS

Du benötigst eine Domain, die auf die öffentliche IP-Adresse deines Servers zeigt. Diese Domain wird später als APP_URL eingetragen. FediSuite selbst spricht nur HTTP auf Port 3000, das HTTPS-Zertifikat stellt der Reverse Proxy aus (zum Beispiel Traefik mit Let's Encrypt, siehe Seite Reverse Proxy).

DNS-Konfiguration

A fedisuite.deine-domain.de 1.2.3.4 (IP deines Servers) Pflicht
AAAA fedisuite.deine-domain.de 2001:db8::1 (nur falls der Server IPv6 hat)
Hinweis: DNS-Änderungen können bis zu 24 Stunden brauchen, bis sie weltweit gelten. Der Reverse Proxy kann erst ein Zertifikat ausstellen, wenn die Domain auf den Server zeigt.

Software

Auf dem Server müssen Docker und Docker Compose installiert sein. Die Datenbank, die App und die Worker starten über Docker Compose. Für HTTPS kommt ein Reverse Proxy hinzu, der entweder schon läuft oder in den Stack eingebaut wird.

Docker Engine aktuell
Pflicht

Die Container-Runtime. Installierbar über das offizielle Docker-Repository oder die Paketverwaltung der Distribution.

Docker Compose v2
Pflicht

Als Plugin (docker compose). Steuert den gesamten FediSuite-Stack. Die mitgelieferte Compose-Datei nutzt Healthchecks mit depends_on und pull_policy.

Reverse Proxy z. B. Traefik v3
Pflicht

Nimmt HTTPS auf Port 443 entgegen und leitet an die App auf Port 3000 weiter. Traefik, Caddy oder Nginx funktionieren. Die Dokumentation zeigt Traefik mit Let's Encrypt.

SMTP-Zugang Postfach
Pflicht

FediSuite verschickt E-Mails für Registrierung, Passwort-Reset und den historischen Import nach dem Verbinden von Konten. Host, Port, Benutzer, Passwort und Absenderadresse gehören in die .env.

Git beliebig
Optional

Zum Klonen des Repositories FediSuite-Self-Hosting und für spätere Updates der Compose-Datei. Auf den meisten Systemen bereits vorinstalliert.

Netzwerk & Ports

Der Reverse Proxy benötigt zwei offene Ports. Diese müssen in der Firewall deines Servers freigegeben sein und dürfen nicht von anderen Diensten belegt werden. Ausgehend braucht der Server Verbindungen zu den Fediverse-Instanzen deiner Nutzer*innen, zu Docker Hub und zum SMTP-Server.

Port Protokoll Zweck
80 TCP HTTP (Weiterleitung zu HTTPS, ACME-HTTP-Challenge)
443 TCP HTTPS / TLS (auch für die TLS-ALPN-Challenge von Let's Encrypt)
3000 TCP App (nur intern; die mitgelieferte Compose-Datei veröffentlicht ihn, siehe Hinweis unten)
443, 587/465 TCP Ausgehend: Fediverse-Instanzen, Docker Hub, SMTP
Wichtig: Die mitgelieferte docker-compose.yml veröffentlicht Port 3000 des app-Containers auf dem Host ("3000:3000"). Docker umgeht dabei Firewalls wie ufw. Mit Reverse Proxy solltest du das Mapping entfernen oder auf 127.0.0.1:3000:3000 beschränken. Belegt bereits ein anderer Webserver (Nginx, Apache) Port 80 oder 443, kann er selbst als Reverse Proxy auf Port 3000 weiterleiten.

Was du nicht brauchst

Der Docker-Compose-Stack bringt Datenbank, App und Worker mit. Du musst Folgendes nicht separat installieren oder konfigurieren:

PostgreSQL : Läuft als Container db (PostgreSQL 15) im Stack
Redis / Cache-Dienst : FediSuite verwendet keinen; Hintergrundjobs laufen in den Worker-Containern
Node.js : Läuft vollständig in den Docker-Containern
Eigener Build : Es gibt fertige Images auf Docker Hub; lokal wird nichts gebaut
SSL-Zertifikate (manuell) : Der Reverse Proxy kann sie automatisch bei Let's Encrypt holen