Verwendung von Docker
Stellen Sie FiveNet mit Docker Engine und dem Docker-Compose-Plugin auf einem einzelnen Server bereit.
Prüfen Sie vor Beginn die Anforderungen und stellen Sie sicher, dass Datenbank, NATS-Server, Storage, Domain und Reverse-Proxy bereit sind.
1. Docker Engine und Docker Compose installieren
Sie benötigen Docker Engine als Container-Laufzeitumgebung und das Docker-Compose-Plugin, um FiveNet einfach mit Containern auszuführen.
Bitte verwenden Sie eine der vielen im Internet verfügbaren Anleitungen, um Docker Engine und Docker Compose auf Ihrem Server zu installieren, z. B. https://docs.docker.com/engine/install/.
Abhängig vom Betriebssystem Ihres Servers stellen Sie sicher, dass der Docker-Daemon mit systemctl start docker gestartet wird.
Um zu überprüfen, ob Docker und das Docker-Compose-Plugin bereit sind, können Sie die folgenden Befehle verwenden:
docker version
docker compose version
Sie können nun mit der Vorbereitung der Datei docker-compose.yaml für Ihre Umgebung fortfahren.
2. docker-compose.yaml vorbereiten
Verwenden Sie die Beispieldatei docker-compose.yaml als Ausgangspunkt.
Prüfen Sie die Beispieldatei und passen Sie sie an Ihre Umgebung an, bevor Sie den Stack starten. Achten Sie dabei insbesondere auf:
- die Image-Tags, die Sie verwenden möchten (z.B. ein Release oder eine Entwicklungsversion)
- Verwenden Sie für produktive Umgebungen ein bestimmtes stabiles Release-Tag. Vermeiden Sie das veränderliche
latest-Tag.
- Verwenden Sie für produktive Umgebungen ein bestimmtes stabiles Release-Tag. Vermeiden Sie das veränderliche
- Umgebungsvariablen und eingebundene Dateien
- Datenbank-, NATS- und andere Service-Verbindungseinstellungen
- Domain- oder Reverse-Proxy-bezogene Einstellungen, falls Sie FiveNet extern bereitstellen
Falls Sie bereits einen Docker-NGINX-Reverse-Proxy oder eine ähnliche Lösung verwenden, um Ihre Container-Anwendungen im Internet verfügbar zu machen, können Sie den nginx-proxy-Container aus der Beispieldatei entfernen oder auskommentieren.
Wenn Sie den Docker-NGINX-Reverse-Proxy verwenden, stellen Sie sicher, dass die Umgebungsvariablen der einzelnen Container zu Ihrer gewünschten Domain oder Subdomain passen.
Falls Sie den NATS-Server aus der Standard-docker-compose.yaml verwenden, nutzen Sie den Namen des Compose-Dienstes als Hostnamen, z. B. url: "nats://fivenet:fivenet_topsecret@nats:4222". Verwenden Sie innerhalb des FiveNet-Containers nicht localhost; dies verweist auf den FiveNet-Container selbst.
2.1. FiveNet-Konfiguration vorbereiten
Folgen Sie der Anleitung FiveNet konfigurieren, um eine funktionierende config.yaml zu erstellen. Für einzelne Optionen können Sie anschließend die Konfigurationsdatei-Referenz verwenden.
2.2. DBSync-Konfiguration vorbereiten
Folgen Sie der Anleitung DBSync installieren und konfigurieren, um eine funktionierende dbsync.yaml zu erstellen.
3. FiveNet ausführen
Laden Sie die neuesten Container-Images herunter und starten Sie die Server-, DBSync-, Worker- und Discord-Container:
docker compose pull
docker compose up -d
4. Bereitstellung überprüfen
Nachdem die Container laufen, prüfen Sie, ob der Stack korrekt gestartet wurde:
docker compose ps
docker compose logs --tail=100
Stellen Sie sicher, dass die FiveNet-Container gesund sind und die Anwendung über Ihre konfigurierte Domain, Ihren Reverse-Proxy oder Ihren lokalen Zugriffsweg erreichbar ist.
5. Empfehlungen für Reverse-Proxys
Falls Sie noch keinen Reverse-Proxy verwenden, um FiveNet bereitzustellen, ziehen Sie eine Lösung wie nginx-proxy/nginx-proxy in Betracht, um den FiveNet-Server (/) und den Iconify-API-Container (/api/icons) sicher bereitzustellen.
5.1. Traefik als Reverse-Proxy konfigurieren
Falls Sie Traefik als Reverse-Proxy bevorzugen, folgen Sie diesen Schritten, um es für FiveNet zu konfigurieren:
- Traefik installieren: Befolgen Sie die Traefik-Dokumentation für Installationsanweisungen.
- Traefik starten: Führen Sie Traefik zusammen mit Ihren FiveNet-Containern mit Docker Compose aus.
- HTTPS/TLS-Setup: Befolgen Sie die Traefik HTTPS/TLS-Setup-Dokumentation, um sichere Verbindungen zu konfigurieren.
- Stellen Sie sicher, dass GRPC/H2C-Unterstützung für den Dienst aktiviert ist. Weitere Informationen finden Sie unter Traefik GRPC mit HTTP (h2c).
- Container beschriften: Fügen Sie die folgenden Labels zum FiveNet-Server-Container in Ihrer Datei
docker-compose.yamlhinzu:labels: - "traefik.enable=true" - "traefik.http.routers.fivenet.rule=Host(`your-domain.com`)" - "traefik.http.routers.fivenet.entrypoints=websecure" - "traefik.http.routers.fivenet.tls.certresolver=myresolver" - "traefik.http.services.fivenet.loadbalancer.server.scheme=h2c" - Konfiguration überprüfen: Stellen Sie sicher, dass Ihre Domain auf die IP des Servers zeigt und dass Traefik den Datenverkehr korrekt an die FiveNet-Container weiterleitet.
Dieses Setup ermöglicht es Ihnen, FiveNet sicher über das Internet mit Traefik zugänglich zu machen.
6. Schritte nach der Installation
Führen Sie jetzt die Ersteinrichtung aus.
Fehlerbehebung
Falls Sie während der containerisierten Installation auf Probleme stoßen, wie z. B. Datenbank-Collation-Unstimmigkeiten, überprüfen Sie die Seite Datenbank- und Installationsfehlerbehebung für Lösungen.
Cloud
FiveNet Cloud ist heute als verwaltete Hosting-Option für Communities verfügbar, die möchten, dass wir FiveNet für sie betreiben und warten.
Kubernetes: Verwendung von Helm
Für die Installation auf Kubernetes ist ein Helm-Chart in unserem Charts-Repository verfügbar. Der Quellcode des Charts ist auf GitHub fivenet-app/charts verfügbar.
