56 lines
1.4 KiB
Markdown
56 lines
1.4 KiB
Markdown
|
# RSS-Feed zu Mastodon & Bluesky Poster
|
|||
|
|
|||
|
Dieses Tool liest regelmäßig einen RSS-Feed aus und veröffentlicht neue Beiträge automatisch auf Mastodon und Bluesky. Es läuft vollständig in einem Docker-Container und benötigt nur eine einfache .env-Datei zur Konfiguration.
|
|||
|
|
|||
|
Dabei prüft es, ob ein Beitrag bereits gepostet wurde, und speichert dies lokal in einer Datei (/data/seen_posts.txt). Optional werden OpenGraph-Daten (Titel, Vorschaubild) der verlinkten Seiten extrahiert, um reichhaltigere Inhalte zu posten.
|
|||
|
|
|||
|
Ein eingebauter HTTP-Healthcheck unter /health läuft auf Port 8000, um den Containerstatus einfach zu prüfen (z. B. für Kubernetes oder Docker-Healthchecks).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
## Voraussetzungen
|
|||
|
|
|||
|
- Docker installiert (mindestens Version 20.10)
|
|||
|
- Zugangsdaten für Mastodon & Bluesky
|
|||
|
- RSS-Feed-URL
|
|||
|
|
|||
|
## Einrichtung
|
|||
|
|
|||
|
1. Repository klonen
|
|||
|
|
|||
|
```bash
|
|||
|
git clone https://github.com/dein-benutzername/rss-poster.git
|
|||
|
cd rss-poster
|
|||
|
```
|
|||
|
|
|||
|
2. `.env`-Datei erstellen
|
|||
|
|
|||
|
Erstelle eine Datei .env im Projektverzeichnis mit folgendem Inhalt:
|
|||
|
|
|||
|
```env
|
|||
|
FEED_URL=https://example.com/rss
|
|||
|
MASTODON_API_BASE_URL=https://mastodon.social
|
|||
|
MASTODON_ACCESS_TOKEN=your_mastodon_token
|
|||
|
BSKY_IDENTIFIER=your_bsky_handle
|
|||
|
BSKY_PASSWORD=your_bsky_password
|
|||
|
INTERVAL_MINUTES=30
|
|||
|
```
|
|||
|
|
|||
|
3. Image bauen
|
|||
|
|
|||
|
```bash
|
|||
|
docker build -t rss-poster .
|
|||
|
```
|
|||
|
|
|||
|
4. Container starten
|
|||
|
|
|||
|
```bash
|
|||
|
docker run -d \
|
|||
|
--name rss-poster \
|
|||
|
--env-file .env \
|
|||
|
-v $(pwd)/data:/data \
|
|||
|
-p 8000:8000 \
|
|||
|
rss-poster
|
|||
|
```
|
|||
|
|