Zum Inhalt springen

Wie installiere ich Castopod?

Castopod ist für eine einfache Installation konzipiert. Ob dediziertes oder Shared-Hosting, du kannst es auf den meisten PHP-MySQL-kompatiblen Webservern installieren.

Voraussetzungen

  • PHP v8.3 oder höher
  • MySQL Version 5.7 oder höher oder MariaDB Version 10.2 oder höher
  • HTTPS-Unterstützung
  • Eine ntp-synchronisierte Uhr um die eingehenden Anfragen zu überprüfen

PHP v8.3 oder höher

PHP Version 8.3 oder höher ist erforderlich, mit folgenden Erweiterungen installiert:

Stelle außerdem sicher, dass die folgenden Erweiterungen in deinem PHP aktiviert sind:

  • json (standardmäßig aktiviert - nicht ausschalten)
  • xml (standardmäßig aktiviert - nicht ausschalten)
  • mysqlnd

MySQL kompatible Datenbank

Wir empfehlen MariaDB.

Du benötigst den Servernamen, den Datenbanknamen, den Benutzernamen und das Passwort, um den Installationsvorgang abzuschließen. Kontaktiere bitte den Administrator, falls du keinen Benutzeraccount hast.

Berechtigungen

Benutzer müssen mindestens diese Berechtigungen in der Datenbank haben, damit Castopod funktioniert: CREATE, ALTER, DELETE, EXECUTE, INDEX, INSERT, SELECT, UPDATE, REFERENCES, CREATE VIEW.

(Optional) FFmpeg v4.1.8 oder höher für Videoclips

FFmpeg Version 4.1.8 oder höher ist erforderlich, wenn Du Videoclips generieren möchtest. Die folgenden Php-Erweiterungen sind nicht installiert: %s:

  • FreeType 2 Bibliothek für gd.

(Optional) Weitere Empfehlungen

  • Redis für bessere Cache-Leistungen.
  • CDN für das Caching statischer Dateien und bessere Leistungen.
  • E-Mail Server Anbindung für E-Mails zu verlorenen Passwörtern.

Installationsanleitung

Voraussetzungen

  1. Treib einen Webserver mit den Voraussetzungen auf

  2. Erstellen Sie eine MySQL-Datenbank für Castopod mit einem Benutzer mit Zugriffsrechten und Modifikationsberechtigungen (für weitere Infos, Siehe MySQL kompatible Datenbank).

  3. Aktivieren Sie HTTPS auf Ihrer Domain mit einem SSL Zertifikat.

  4. Lade und entpacke das letzte Castopod Packet auf den Webserver, wenn nicht schon geschehen.

    • ⚠️ Setzte das Webserver Document root auf das public/ Unterverzeichnis innerhalb des castopod Ordners.
  5. Füge cron tasks auf deinem Webserver hinzu für verschiedene Hintergrundprozesse (ersetze die Pfade entsprechend):

    Terminal-Fenster
    * * * * * /path/to/php /path/to/castopod/spark tasks:run >> /dev/null 2>&1

    Hinweis - Wenn Sie diese Cron-Aufgabe nicht hinzufügen, funktionieren die folgenden Castopod-Funktionen nicht:

    • Einen Podcast aus einem vorhandenen RSS-Feed importieren
    • Sende soziale Aktivitäten an deine Follower im Fediversum
    • Übertragungen von Episoden zu open hubs mit WebSub-
    • Generieren von Videoclips - benötigt FFmpeg

(empfohlen) Installations-Assistent

  1. Führen Sie das Castopod Installationsskript aus, indem Sie auf die Installations-Seite (https://your_domain_name.com/cp-install) in Ihrem bevorzugten Webbrowser gehen.
  2. Folge der Anleitung auf dem Bildschirm.
  3. Podcasting starten!

Using CLI

  1. Create a .env file in the package root based on the .env.example file.

  2. Initialize the database using:

    Terminal-Fenster
    php spark install:init-database
  3. Create the superadmin user using:

    Terminal-Fenster
    php spark install:create-superadmin
  4. Head on to your admin gateway to start podcasting!

Email/SMTP Setup

E-Mail-Konfiguration ist erforderlich, damit einige Funktionen ordnungsgemäß funktionieren (zB. das Abrufen Ihres vergessenen Passworts, das Senden von Anweisungen an Premium-Abonnenten, …)

Sie können Ihre E-Mail-Konfiguration in .env Ihrer Instanz einfügen:

# […]
# […]
email.fromEmail="your_email_address"
email.SMTPHost="your_smtp_host"
email.SMTPUser="your_smtp_user"
email.SMTPPass="your_smtp_password"

E-Mail-Konfigurationsoptionen

VariablennamenTypVoreinstellung
fromEmailstringundefined
fromNamestring"Castopod"
SMTPHoststringundefined
SMTPUserstringundefined
SMTPPassstringundefined
SMTPPortnumber25
SMTPCrypto["tls" or "ssl"]"tls"

Media storage

Standardmäßig werden Dateien im Ordner public/media über das Dateisystem gespeichert. Wenn Sie den Ordner media an einen anderen Ort verlegen müssen, können Sie es in Ihrer .env Datei angeben wie unten gezeigt:

# […]
media.root="media"
media.storage="/mnt/storage"

In diesem Beispiel werden die Dateien im Ordner /mnt/storage/media gespeichert. Stellen Sie sicher, dass Sie auch Ihre Webserver-Konfiguration aktualisieren, um diese Änderung wiederzugeben.

S3

Wenn Sie Ihre Mediendateien lieber auf einem S3-kompatiblen Speicher speichern möchten, können Sie dies in Ihrer .env spezifizieren:

# […]
media.fileManager="s3"
media.s3.endpoint="your_s3_host"
media.s3.key="your_s3_key"
media.s3.secret="your_s3_secret"
media.s3.region="your_s3_region"

S3 Konfigurationsoptionen

VariablennamenTypVoreinstellung
endpointstringundefined
keystringundefined
secretstringundefined
regionstringundefined
bucketstringcastopod
protocolnumberundefined
pathStyleEndpointbooleanfalse
keyPrefixstringundefined

Community-Pakete

Wenn Sie Castopod nicht manuell installieren wollen, können Sie eines der von der Open-Source-Community erstellten und betreuten Pakete verwenden.

Installieren mit YunoHost

YunoHost ist eine auf Debian GNU/Linux basierende Distribution, die aus freien und Open-Source-Software-Paketen besteht. Es kümmert sich um den Aufwand von self-hosting für dich.