Restructuring of the README.md
This commit is contained in:
73
README.md
73
README.md
@ -1,53 +1,98 @@
|
||||
# RSS-Feed zu Mastodon & Bluesky Poster
|
||||
# 📰 BlueMastoFeed – RSS 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.
|
||||
**BlueMastoFeed** ist ein Docker-basiertes Tool, das regelmäßig einen RSS-Feed ausliest und neue Beiträge automatisch auf **Mastodon** und **Bluesky** veröffentlicht.
|
||||
|
||||
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.
|
||||
Es prüft, ob ein Beitrag bereits gepostet wurde, und speichert diese Information lokal in einer Datei (`/data/seen_posts.txt`). Optional werden OpenGraph-Daten (Titel, Vorschau-Bild etc.) der verlinkten Seiten extrahiert, um die Posts ansprechender zu gestalten.
|
||||
|
||||
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
- Docker installiert (mindestens Version 20.10)
|
||||
- Docker (Version **20.10** oder höher)
|
||||
- Zugangsdaten für Mastodon & Bluesky
|
||||
- RSS-Feed-URL
|
||||
- Gültige RSS-Feed-URL
|
||||
|
||||
## Einrichtung
|
||||
|
||||
1. Repository klonen
|
||||
|
||||
## Einrichtung für Produktivbetrieb
|
||||
|
||||
### 1. Datenverzeichnis auf dem Host erstellen
|
||||
|
||||
```bash
|
||||
mkdir -p /opt/bluemastofeed/data
|
||||
```
|
||||
|
||||
### 2. Container mit Umgebungsvariablen starten
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
--name bluemastofeed \
|
||||
-e FEED_URL=https://example.com/rss.xml \
|
||||
-e MASTODON_API_BASE_URL=https://mastodon.social \
|
||||
-e MASTODON_ACCESS_TOKEN=your_mastodon_access_token \
|
||||
-e BSKY_IDENTIFIER=your_handle.bsky.social \
|
||||
-e BSKY_PASSWORD=your_bluesky_password \
|
||||
-v /opt/bluemastofeed/data:/data \
|
||||
dev.ksite.de/ralf.kirchner/bluemastofeed:latest
|
||||
```
|
||||
|
||||
|
||||
|
||||
## Einrichtung für Entwicklung
|
||||
|
||||
### 1. Repository klonen
|
||||
|
||||
```bash
|
||||
git clone https://dev.ksite.de/ralf.kirchner/BlueMastoFeed.git
|
||||
cd BlueMastoFeed
|
||||
```
|
||||
|
||||
2. `.env`-Datei erstellen
|
||||
### 2. `.env`-Datei erstellen
|
||||
|
||||
Erstelle eine Datei .env im Projektverzeichnis mit folgendem Inhalt:
|
||||
Erstelle im Projektverzeichnis eine Datei namens `.env` mit folgendem Inhalt:
|
||||
|
||||
```env
|
||||
FEED_URL=https://example.com/rss
|
||||
FEED_URL=https://example.com/rss.xml
|
||||
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
|
||||
### 3. Docker-Image lokal bauen
|
||||
|
||||
```bash
|
||||
docker build -t bluemastofeed .
|
||||
```
|
||||
|
||||
4. Container starten
|
||||
### 4. Container starten
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
--name rss-poster \
|
||||
--env-file .env \
|
||||
-v $(pwd)/data:/data \
|
||||
-p 8000:8000 \
|
||||
bluemastofeed
|
||||
```
|
||||
|
||||
|
||||
|
||||
## Umgebungsvariablen
|
||||
|
||||
Die folgenden Umgebungsvariablen steuern das Verhalten des Containers. Sie können entweder direkt beim Start übergeben oder über eine `.env`-Datei definiert werden.
|
||||
|
||||
| Variable | Beschreibung |
|
||||
| ----------------------- | ------------------------------------------------------------ |
|
||||
| `FEED_URL` | URL des RSS-Feeds, der regelmäßig überprüft wird (z. B. `https://example.com/rss.xml`) |
|
||||
| `MASTODON_API_BASE_URL` | Basis-URL der Mastodon-Instanz (z. B. `https://mastodon.social`) |
|
||||
| `MASTODON_ACCESS_TOKEN` | Access Token des Mastodon-Accounts für die API-Nutzung |
|
||||
| `BSKY_IDENTIFIER` | Bluesky-Handle oder Login (z. B. `user.bsky.social`) |
|
||||
| `BSKY_PASSWORD` | Passwort des Bluesky-Accounts |
|
||||
| `INTERVAL_MINUTES` | Zeitintervall in Minuten zur Prüfung des RSS-Feeds (z. B. `30`) |
|
||||
| `SMTP_HOST` | SMTP-Server für den Versand von E-Mails |
|
||||
| `SMTP_PORT` | Port des SMTP-Servers (z. B. `587` für STARTTLS) |
|
||||
| `SMTP_USER` | SMTP-Benutzername |
|
||||
| `SMTP_PASSWORD` | SMTP-Passwort |
|
||||
| `EMAIL_FROM` | Absenderadresse für E-Mail-Benachrichtigungen |
|
||||
| `EMAIL_TO` | Empfängeradresse für Benachrichtigungen |
|
||||
| `EMAIL_MODE` | Wann E-Mails versendet werden:<br>• `none` – keine Mails<br>• `errors` – nur bei Fehlern<br>• `all` – bei jedem Durchlauf |
|
||||
|
Reference in New Issue
Block a user