2022-04-14 13:11:07 +00:00
|
|
|
---
|
|
|
|
title: Installation
|
|
|
|
sidebarDepth: 3
|
|
|
|
---
|
|
|
|
|
2023-03-16 16:45:41 +00:00
|
|
|
# Wie installiere ich Castopod?
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
Castopod ist für eine einfache Installation konzipiert. Ob dediziertes oder
|
|
|
|
Shared-Hosting, du kannst es auf den meisten PHP-MySQL-kompatiblen Webservern
|
|
|
|
installieren.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2022-08-22 15:56:51 +00:00
|
|
|
::: tip Note
|
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
Wir haben offizielle Docker Images für Castopod veröffentlicht!
|
2022-07-04 13:27:21 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
Wenn du Docker bevorzugst, kannst du die manuelle Anleitung überspringen und
|
|
|
|
direkt zur [Docker-Dokumentation](./docker.md) für Castopod gehen.
|
2022-07-04 13:27:21 +00:00
|
|
|
|
|
|
|
:::
|
|
|
|
|
2023-03-16 16:45:41 +00:00
|
|
|
## Voraussetzungen
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
- PHP v8.1 oder höher
|
2023-03-16 16:45:41 +00:00
|
|
|
- MySQL Version 5.7 oder höher oder MariaDB Version 10.2 oder höher
|
|
|
|
- HTTPS-Unterstützung
|
2023-05-05 14:28:51 +00:00
|
|
|
- Eine [ntp-synchronisierte Uhr](https://wiki.debian.org/NTP) um die eingehenden
|
|
|
|
Anfragen zu überprüfen
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
### PHP v8.1 oder höher
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
PHP Version 8.1 oder höher ist erforderlich, mit folgenden Erweiterungen
|
|
|
|
installiert:
|
2022-04-14 13:11:07 +00:00
|
|
|
|
|
|
|
- [intl](https://php.net/manual/en/intl.requirements.php)
|
|
|
|
- [libcurl](https://php.net/manual/en/curl.requirements.php)
|
|
|
|
- [mbstring](https://php.net/manual/en/mbstring.installation.php)
|
2023-05-05 14:28:51 +00:00
|
|
|
- [gd](https://www.php.net/manual/en/image.installation.php) mit **JPEG**,
|
|
|
|
**PNG** und **WEBP** Bibliotheken.
|
2022-04-14 13:11:07 +00:00
|
|
|
- [exif](https://www.php.net/manual/en/exif.installation.php)
|
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
Stelle außerdem sicher, dass die folgenden Erweiterungen in deinem PHP aktiviert
|
|
|
|
sind:
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
- json (standardmäßig aktiviert - nicht ausschalten)
|
|
|
|
- xml (standardmäßig aktiviert - nicht ausschalten)
|
2022-04-14 13:11:07 +00:00
|
|
|
- [mysqlnd](https://php.net/manual/en/mysqlnd.install.php)
|
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
### MySQL kompatible Datenbank
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
> Wir empfehlen [MariaDB](https://mariadb.org).
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2022-07-04 13:27:21 +00:00
|
|
|
::: warning Warning
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
Castopod funktioniert nur mit unterstützten MySQL 5.7 oder höher kompatiblen
|
|
|
|
Datenbanken. Es wird zum Beispiel mit dem vorherigen MySQL v5.6 nicht mehr
|
|
|
|
funktionieren, dessen Lebensende am 5. Februar 2021 war.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
|
|
|
:::
|
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
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.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
#### Berechtigungen
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
Benutzer müssen mindestens diese Berechtigungen in der Datenbank haben, damit
|
|
|
|
Castopod funktioniert: `CREATE`, `ALTER`, `DELETE`, `EXECUTE`, `INDEX`,
|
|
|
|
`INSERT`, `SELECT`, `UPDATE`, `REFERENCES`, `CREATE VIEW`.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
### (Optional) FFmpeg v4.1.8 oder höher für Videoclips
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
[FFmpeg](https://www.ffmpeg.org/) Version 4.1.8 oder höher ist erforderlich,
|
|
|
|
wenn Du Videoclips generieren möchtest. Die folgenden Php-Erweiterungen sind
|
|
|
|
nicht installiert: %s:
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
- **FreeType 2** Bibliothek für
|
2022-04-14 13:11:07 +00:00
|
|
|
[gd](https://www.php.net/manual/en/image.installation.php).
|
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
### (Optional) Weitere Empfehlungen
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
- 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.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
## Installationsanleitung
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-05-05 14:28:51 +00:00
|
|
|
### Voraussetzungen
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
0. Treib einen Webserver mit den [Voraussetzungen](#requirements) auf
|
|
|
|
1. Erstellen Sie eine MySQL-Datenbank für Castopod mit einem Benutzer mit
|
|
|
|
Zugriffsrechten und Modifikationsberechtigungen (für weitere Infos, Siehe
|
|
|
|
[MySQL kompatible Datenbank](#mysql-compatible-database)).
|
|
|
|
2. Aktivieren Sie HTTPS auf Ihrer Domain mit einem _SSL Zertifikat_.
|
|
|
|
3. Lade und entpacke das letzte [Castopod Packet](https://castopod.org/) auf den
|
|
|
|
Webserver, wenn nicht schon geschehen.
|
|
|
|
- ⚠️ Setzte das Webserver Document root auf das `public/` Unterverzeichnis
|
|
|
|
innerhalb des `castopod` Ordners.
|
|
|
|
4. Füge **cron tasks** auf deinem Webserver hinzu für verschiedene
|
|
|
|
Hintergrundprozesse (ersetze die Pfade entsprechend):
|
2022-04-14 13:11:07 +00:00
|
|
|
|
|
|
|
```bash
|
2023-06-21 17:17:32 +00:00
|
|
|
* * * * * /path/to/php /path/to/castopod/spark tasks:run >> /dev/null 2>&1
|
2022-04-14 13:11:07 +00:00
|
|
|
```
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
**Hinweis** - Wenn Sie diese Cron-Aufgabe nicht hinzufügen, funktionieren die
|
|
|
|
folgenden Castopod-Funktionen nicht:
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
- 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-](https://en.wikipedia.org/wiki/WebSub)
|
|
|
|
- Generieren von Videoclips -
|
|
|
|
[benötigt FFmpeg](#optional-ffmpeg-v418-or-higher-for-video-clips)
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
### (empfohlen) Installations-Assistent
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
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!
|
2022-04-14 13:11:07 +00:00
|
|
|
|
|
|
|
::: info Note
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
Das Installationsskript schreibt eine `.env` Datei im Paket-Root. Wenn Sie nicht
|
|
|
|
durch den Installations-Assistenten kommen, können Sie die `.env` Datei manuell
|
|
|
|
erstellen und bearbeiten basierend auf der `.env.example` Datei.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
|
|
|
:::
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
### Using CLI
|
2022-10-14 16:12:14 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
1. Create a `.env` file in the package root based on the `.env.example` file.
|
|
|
|
2. Initialize the database using:
|
2022-10-14 16:12:14 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
```sh
|
|
|
|
php spark install:init-database
|
|
|
|
```
|
|
|
|
|
|
|
|
3. Create the superadmin user using:
|
|
|
|
|
|
|
|
```sh
|
|
|
|
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:
|
2022-10-14 16:12:14 +00:00
|
|
|
|
|
|
|
```ini
|
|
|
|
# […]
|
|
|
|
|
2022-11-04 11:03:24 +00:00
|
|
|
# […]
|
|
|
|
|
2022-10-14 16:12:14 +00:00
|
|
|
email.fromEmail="your_email_address"
|
|
|
|
email.SMTPHost="your_smtp_host"
|
|
|
|
email.SMTPUser="your_smtp_user"
|
|
|
|
email.SMTPPass="your_smtp_password"
|
|
|
|
```
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
#### E-Mail-Konfigurationsoptionen
|
2022-10-14 16:12:14 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
| Variablennamen | Typ | Voreinstellung |
|
|
|
|
| ---------------- | -------------------- | -------------- |
|
|
|
|
| **`fromEmail`** | string | `undefined` |
|
|
|
|
| **`fromName`** | string | `"Castopod"` |
|
|
|
|
| **`SMTPHost`** | string | `undefined` |
|
|
|
|
| **`SMTPUser`** | string | `undefined` |
|
|
|
|
| **`SMTPPass`** | string | `undefined` |
|
|
|
|
| **`SMTPPort`** | number | `25` |
|
|
|
|
| **`SMTPCrypto`** | [`"tls"` or `"ssl"`] | `"tls"` |
|
2022-10-14 16:12:14 +00:00
|
|
|
|
2023-04-01 12:38:40 +00:00
|
|
|
### Media storage
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
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:
|
2023-04-01 12:38:40 +00:00
|
|
|
|
|
|
|
```ini
|
|
|
|
# […]
|
2023-03-16 16:45:41 +00:00
|
|
|
|
2023-04-01 12:38:40 +00:00
|
|
|
media.root="media"
|
|
|
|
media.storage="/mnt/storage"
|
|
|
|
```
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
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.
|
2023-04-01 12:38:40 +00:00
|
|
|
|
|
|
|
### S3
|
2023-03-16 16:45:41 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
Wenn Sie Ihre Mediendateien lieber auf einem S3-kompatiblen Speicher speichern
|
|
|
|
möchten, können Sie dies in Ihrer `.env` spezifizieren:
|
2023-03-16 16:45:41 +00:00
|
|
|
|
|
|
|
```ini
|
|
|
|
# […]
|
|
|
|
|
|
|
|
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"
|
|
|
|
```
|
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
#### S3 Konfigurationsoptionen
|
2023-03-16 16:45:41 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
| Variablennamen | Typ | Voreinstellung |
|
|
|
|
| ----------------------- | ------- | -------------- |
|
|
|
|
| **`endpoint`** | string | `undefined` |
|
|
|
|
| **`key`** | string | `undefined` |
|
|
|
|
| **`secret`** | string | `undefined` |
|
|
|
|
| **`region`** | string | `undefined` |
|
|
|
|
| **`bucket`** | string | `castopod` |
|
|
|
|
| **`protocol`** | number | `undefined` |
|
|
|
|
| **`pathStyleEndpoint`** | boolean | `false` |
|
|
|
|
| **`keyPrefix`** | string | `undefined` |
|
2023-03-16 16:45:41 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
## Community-Pakete
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
Wenn Sie Castopod nicht manuell installieren wollen, können Sie eines der von
|
|
|
|
der Open-Source-Community erstellten und betreuten Pakete verwenden.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
### Installieren mit YunoHost
|
2022-04-14 13:11:07 +00:00
|
|
|
|
2023-11-29 17:27:10 +00:00
|
|
|
[YunoHost](https://yunohost.org/) 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.
|
2022-04-14 13:11:07 +00:00
|
|
|
|
|
|
|
<div class="flex flex-wrap items-center gap-4">
|
|
|
|
|
|
|
|
<a href="https://install-app.yunohost.org/?app=castopod" target="_blank" rel="noopener noreferrer">
|
2023-11-29 17:27:10 +00:00
|
|
|
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Installiere Castopod mit YunoHost" class="align-middle" />
|
2022-04-14 13:11:07 +00:00
|
|
|
</a>
|
|
|
|
|
|
|
|
<a href="https://github.com/YunoHost-Apps/castopod_ynh" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-[.3rem] mx-auto font-semibold text-center text-black rounded-md gap-x-1 border-2 border-solid border-[#333] hover:no-underline hover:bg-gray-100"><svg
|
|
|
|
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="1em" height="1em"
|
|
|
|
class="text-xl"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2A10 10 0 0 0 2 12a10 10 0 0 0 6.84 9.49c.5.09.69-.21.69-.48l-.02-1.86c-2.51.46-3.16-.61-3.36-1.18-.11-.28-.6-1.17-1.02-1.4-.35-.2-.85-.66-.02-.67.79-.01 1.35.72 1.54 1.02.9 1.52 2.34 1.1 2.91.83a2.1 2.1 0 0 1 .64-1.34c-2.22-.25-4.55-1.11-4.55-4.94A3.9 3.9 0 0 1 6.68 8.8a3.6 3.6 0 0 1 .1-2.65s.83-.27 2.75 1.02a9.28 9.28 0 0 1 2.5-.34c.85 0 1.7.12 2.5.34 1.9-1.3 2.75-1.02 2.75-1.02.54 1.37.2 2.4.1 2.65.63.7 1.02 1.58 1.02 2.68 0 3.84-2.34 4.7-4.56 4.94.36.31.67.91.67 1.85l-.01 2.75c0 .26.19.58.69.48A10.02 10.02 0 0 0 22 12 10 10 0 0 0 12 2z"/></svg>Github
|
|
|
|
Repo</a>
|
|
|
|
|
|
|
|
</div>
|