Castopod - open source hosting i publikacja podcastów z federacją ActivityPub, odcinki widoczne bezpośrednio w Mastodonie i innych aplikacjach fediwersum.
Środowisko
| Runtime | Oficjalny obraz Docker castopod/castopod (FrankenPHP + Caddy), wspólny MySQL Saplo, media (odcinki audio, okładki) w nazwanym wolumenie |
| Zalecany plan | Box M+ (Docker, min 1 GB RAM, więcej miejsca na dysku niż typowa receptura - biblioteka odcinków audio rośnie z użyciem) |
Przykładowy saplo.yaml
Plik saplo.yaml w katalogu głównym repozytorium opisuje, jak Saplo ma zbudować i uruchomić aplikację. Wygeneruje go też komenda saplo init.
version: 1
name: my-podcast
stack: castopod
app_id: 1234
Pełny opis wszystkich pól znajdziesz na stronie Plik saplo.yaml.
Jak wdrożyć
Ten stack wdrożysz na trzy sposoby - wybierz wygodny dla siebie:
- Z panelu - tworzysz aplikację klikami, kod wgrywasz później przez CLI lub Git.
- Saplo CLI - z katalogu projektu:
saplo init, potemsaplo deploy. - Deploy z GitHub - podłączasz repo raz, każdy push wdraża się sam.
# Najszybsza droga - z katalogu projektu
$ npm install -g @saplo/cli
$ saplo login
$ saplo init
$ saplo deploy
Dobrze wiedzieć
- Stawiasz z panelu jednym kliknięciem - Saplo instaluje Docker CE, pobiera obraz, zakłada bazę MySQL i konto administratora automatycznie.
- Logowanie administratora (login, e-mail, wygenerowane hasło) trafia do pliku CASTOPOD-SETUP.txt w katalogu aplikacji zaraz po instalacji.
- RSS feedu z odcinkami możesz dodać w Apple Podcasts, Spotify for Podcasters i każdym innym katalogu, który przyjmuje standardowy RSS 2.0 z tagami podcastowymi.
- Federacja ActivityPub (widoczność podcastu i odcinków w Mastodonie) działa od razu - HTTPS jest wymagany i włączony domyślnie, bo bez niego fediwersum nie zaufa instancji.
- Kopia (automatyczna od Box L, ręcznie snapshotem na każdym planie) obejmuje wolumen z mediami (odcinki audio, okładki, transkrypcje) oraz bazę MySQL.
Gotowy na deploy?
Wybierz plan Box i postaw aplikację Castopod jeszcze dziś.