Administratoren

# Deinen eigenen Welley-Server betreiben

Unser Kommandozeilen-Tool installiert alles, was Welley braucht, auf einem Linux-Rechner. Ein Cloud-Server funktioniert, ebenso deine eigene Hardware.

[Lesen: Schnellstart: Minimales Welley-Deployment](https://welley.com/de/administrators/docs/quick-start/) [Lesen: Welley CLI](https://welley.com/de/administrators/docs/cli/) [Docker Engine installieren](https://docs.docker.com/engine/install/)

Wir planen, Welley in Zukunft als Open Source zu veröffentlichen. Einen Veröffentlichungstermin und eine Lizenz haben wir noch nicht bekannt gegeben.

## Host, DNS und E-Mail vorbereiten

Das sind die Ausgangsvoraussetzungen aus dem Schnellstart. Wie viel Kapazität du brauchst, hängt von deinen Nutzern und der Auslastung ab.

### Linux-Host

-   Ubuntu 24.04 LTS oder eine ähnliche aktuelle Distribution.
-   Beginne mit 2 vCPU, 4 GB RAM und 60 GB Speicherplatz.
-   Nutze eine feste öffentliche IPv4-Adresse und einen Nicht-Root-Nutzer mit sudo.

### Netzwerk

-   Erlaube eingehenden TCP-Verkehr auf Port 80 und 443 aus dem Internet. Erlaube TCP 22 aus deinem eigenen Netzwerk.
-   Halte Port 80 für die Zertifikatsprüfung und die wöchentliche Zertifikatserneuerung frei.

### DNS der Website

-   Richte deine Domain und storage.<domain> auf die IP-Adresse des Hosts aus.
-   Lege beide Einträge vor der Installation an. Die CLI prüft sie und bricht ab, wenn sie nicht auf den Host zeigen.

### SMTP und Administrator-E-Mail

-   Halte SMTP-Host, Benutzer, Passwort und Absenderadresse bereit. Standard ist STARTTLS auf Port 587.
-   Außerdem brauchst du eine Administrator-E-Mail-Adresse für die erste Anmeldung und für die Passwortwiederherstellung.

### E-Mail-DNS

-   Richte SPF, DMARC und den DKIM-Eintrag, den dein Anbieter erzeugt, für die Domain der Absenderadresse ein.
-   Nutze genau den SPF-Wert deines Anbieters. Füge ihn in deinen bestehenden SPF-Eintrag ein, statt einen zweiten anzulegen.
-   Die CLI warnt dich, wenn SPF oder DMARC fehlt. Den DKIM-Selektor deines Anbieters kann sie nicht prüfen.

## Docker Engine und Compose installieren

Folge der offiziellen Anleitung von Docker für deine Linux-Distribution. Gib dann deinem Deployment-Nutzer Zugriff auf Docker.

[Installation von Docker Engine](https://docs.docker.com/engine/install/)

### Den Nutzer zur Docker-Gruppe hinzufügen

Ersetze <user> durch deinen Nicht-Root-Deployment-Nutzer. Melde dich nach diesem Befehl ab und wieder an.

```
sudo usermod -aG docker <user>
```

### Docker und Compose prüfen

Beide Befehle müssen für diesen Nutzer funktionieren.

```
docker ps
docker compose version
```

## CLI herunterladen

Wähle die Binärdatei für den Rechner, auf dem du die CLI ausführst. Der Deployment-Host selbst muss unter Linux laufen.

### Linux, x86-64

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/amd64" -o wlycli
chmod +x wlycli
./wlycli -v
```

### Linux, ARM64

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/arm64" -o wlycli
chmod +x wlycli
./wlycli -v
```

### macOS, Apple Silicon

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/arm64" -o wlycli
chmod +x wlycli
./wlycli -v
```

### macOS, Intel

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/amd64" -o wlycli
chmod +x wlycli
./wlycli -v
```

-   Diese Befehle laden aus dem stabilen Kanal herunter und zeigen die CLI-Version an.
-   Die Version ändert sich mit jedem neuen Release. Nutze bei der Installation die neueste CLI-Dokumentation.

## Das Deployment erstellen

Führe diesen Befehl auf dem vorbereiteten Linux-Host aus. Ersetze die Beispielwerte für Domain, E-Mail und SMTP durch deine eigenen.

```
./wlycli deploy create \
-d example.com \
-e admin@example.com \
--smtp-host smtp.example.com \
--smtp-user "$MAIL_USER" \
--smtp-password "$MAIL_PASSWORD" \
--smtp-from noreply@example.com
```

| Einstellung | Standard |
| --- | --- |
| Installationsverzeichnis | ~/.welley/<project>. Die Beispieldomain ergibt den Projektnamen example\_com. |
| Datenbank | Mitgeliefertes PostgreSQL, mit den Daten im Installationsverzeichnis. |
| Stack | Welley-Plattform, RAG-Pipeline, Nginx, Redis und PostgreSQL, mit Wartungs-Containern. |
| Zertifikate | Let’s Encrypt über Certbot, mit wöchentlicher Erneuerung. |
| Medien | Uploads und statische Dateien unter https://storage.<domain>. |
| Updates | Stabiler Kanal, täglich geprüft. Der Update-Vorgang vermeidet Ausfallzeiten, wo es möglich ist. |
| Optionale Dienste | Die minimale Einrichtung fügt keine verwaltete Datenbank, kein CDN, keine Telemetrie und keine Slack-Integration hinzu. |

-   Setze vor dem Ausführen MAIL\_USER und MAIL\_PASSWORD auf deine SMTP-Zugangsdaten.
-   Der Schnellstart verlangt diese sechs Flags.
-   Der Befehl prüft DNS, schreibt die Deployment-Dateien, holt mit Certbot ein Zertifikat und startet die Container.
-   Der Befehl deploy ist ein Alias für deployment.

## Anmelden und das Ergebnis prüfen

Das erzeugte Administratorpasswort steht im Plattform-Log. Halte diese Ausgabe privat.

### Das Anfangspasswort finden

Dieser Containername gilt für example.com. Ändere für deine eigene Domain den Projektnamen.

```
docker logs example_com-platform-blue-1 | grep "Auto-init complete"
```

### Anmelden

Öffne deine Domain und melde dich mit der Administrator-E-Mail an, die du bei -e angegeben hast. Ändere das erzeugte Passwort sofort.

### Die Container prüfen

Laut Schnellstart solltest du nginx, platform-blue, rag-pipeline-blue, postgres, redis, autoheal und snoopy sehen.

```
docker ps
```

## Die CLI für die Administration nutzen

Die CLI hat auch Befehle für die Plattform-API. Dein Konto braucht trotzdem die Berechtigungen für jede Operation.

-   Prüfe vor dem Ausführen einer Operation ihre aktuellen Flags in der Befehlshilfe.
-   Der Befehl login erwartet die API-Basis-URL, die E-Mail-Adresse und das Passwort. Er speichert das Sitzungstoken, das er zurückbekommt.
-   Aktuell gibt der Login-Befehl sein Sitzungstoken im Erfolgsprotokoll aus. Behandle diese Ausgabe vertraulich.

Befehlsgruppen: `accounts`, `posts`, `apps`, `emojis`, `feeds`, `reports`, `rules`, `settings`.

### Verfügbare Befehle anzeigen

```
./wlycli --help
```

### Deployment-Befehle anzeigen

```
./wlycli deployment --help
```

### Login-Optionen anzeigen

```
./wlycli login --help
```

### Einstellungsoptionen anzeigen

```
./wlycli settings --help
```

## Updates und Wiederherstellung

Standardmäßig prüft ein Deployment jeden Tag auf stabile Updates. Wer den Server administriert, kann Releases in der Administrationsoberfläche verwalten.

-   Wenn deine Deployment-Dateien noch gültig sind, aber einzelne Container ausfallen, empfiehlt die Schnellstartanleitung, restart auszuführen. Dadurch werden die Container neu erstellt.
-   Create läuft nicht noch einmal, solange das Projektverzeichnis oder seine Container noch existieren.
-   Die Force-Delete-Option entfernt die Deployment-Dateien und die mitgelieferte Datenbank. Sie ist kein Schritt zur Wiederherstellung, und deine Daten bleiben dabei nicht erhalten.
-   Der Skill deploy-server verwendet noch den Namen deployment update. Die aktuelle CLI hat stattdessen deployment auto-update. Sieh in der aktuellen CLI-Hilfe nach, bevor du Wartungsarbeiten von Hand machst.

### Container aus dem bestehenden Deployment neu erstellen

```
./wlycli deploy restart -d example.com
```

Erstellt die Container aus deiner gespeicherten Konfiguration neu. Dabei werden keine Deployment-Daten gelöscht.

## Mit einem KI-Assistenten deployen

Wenn dein KI-Assistent SKILL.md-Pakete unterstützt, lade unseren offiziellen Skill deploy-server herunter. Er führt dich durch ein Deployment auf DigitalOcean.

Im Moment deckt der Skill nur DigitalOcean ab. Die CLI-Schnellstartanleitung funktioniert auch mit anderen Clouds und mit deinem eigenen Linux-Host.

### So nutzt du es

-   Entpacke das Paket und lade das Verzeichnis deploy-server so, wie dein Assistent Skills installiert.
-   Bitte den Assistenten, $deploy-server zu verwenden.
-   Der Skill fragt dich nach Domain, DNS-Zugang, SSH-Einrichtung, SMTP-Angaben und der E-Mail-Adresse des Administrators.
-   Er kann eine DigitalOcean-VM einrichten und, wenn du möchtest, eine verwaltete PostgreSQL-Datenbank. Die Angaben für das Deployment und den Preis der verwalteten Datenbank bestätigt er mit dir.

### Vor dem Download

-   Das Paket ist eine unveränderte Kopie des ursprünglichen Skills.
-   Die Beispiele für Download und Update sind veraltet. Die aktuelle stabile Download-URL findest du in der Schnellstartanleitung auf dieser Website. Sieh vor Wartungsarbeiten in der CLI-Hilfe nach.
-   Der Skill kommt ohne Cloud-Zugangsdaten und ohne laufenden Server, und wir können nicht garantieren, dass er mit jedem Assistenten funktioniert.

Das Paket enthält `SKILL.md`, `agents/openai.yaml` und `references/digitalocean.md`. Beide Downloads enthalten dieselben Dateien.

[deploy-server.zip herunterladen (10,7 KB)](https://welley.com/downloads/deploy-server.zip) [deploy-server.skill herunterladen (10,7 KB)](https://welley.com/downloads/deploy-server.skill)

## Referenzdokumentation

Die vollständige CLI-Dokumentation und die Dateien des Deployment-Skills. Du kannst sie hier ohne Konto lesen.

-   [**Welley CLI** docs/index.md](https://welley.com/de/administrators/docs/cli/)
-   [**Schnellstart: Minimales Welley-Deployment** docs/quick-start.md](https://welley.com/de/administrators/docs/quick-start/)
-   [**Server bereitstellen** skills/deploy-server/SKILL.md](https://welley.com/de/administrators/docs/deploy-server-skill/)
-   [**openai.yaml** skills/deploy-server/agents/openai.yaml](https://welley.com/de/administrators/docs/deploy-server-openai-yaml/)
-   [**DigitalOcean-Referenz** skills/deploy-server/references/digitalocean.md](https://welley.com/de/administrators/docs/deploy-server-digitalocean/)
