Portainer-Deployment: Env-Interpolation statt env_file, lokales Webhook-Test-Skript
- docker-compose.yml: Variablen per Interpolation (lokal aus .env, in Portainer aus Stack-Env) - tools/test-webhook.mjs: signierte Fake-Testzustellung gegen die lokale Instanz - README: Portainer-Anleitung präzisiert (Git-Auth für privates Repo, Pull and redeploy) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -112,20 +112,32 @@ Erwartete Ausgabe:
|
||||
|
||||
Dann in Discord: `/ping` → Bot antwortet mit Latenz. 🎉
|
||||
|
||||
**Commit-Feed lokal testen** (ohne Gitea — simuliert eine signierte Testzustellung):
|
||||
```
|
||||
node tools/test-webhook.mjs
|
||||
```
|
||||
→ Embed erscheint im Commit-Kanal, Commit landet in der lokalen SQLite (`data/ecobot.db`).
|
||||
|
||||
---
|
||||
|
||||
## Deployment (Docker / Portainer)
|
||||
|
||||
### Variante A: Portainer-Stack aus Git (empfohlen)
|
||||
1. Portainer → **Stacks** → **Add stack**
|
||||
2. **Repository** wählen:
|
||||
- URL: `https://git.d4rkst3r.de/D4rkst3r/ecobot.git`
|
||||
1. Portainer → **Stacks** → **Add stack** → Name: `ecobot`
|
||||
2. Build method: **Repository**
|
||||
- Repository URL: `https://git.d4rkst3r.de/D4rkst3r/ecobot`
|
||||
- Repository reference: `refs/heads/main`
|
||||
- Compose path: `docker-compose.yml`
|
||||
3. Unter **Environment variables** die drei Werte aus der `.env` eintragen
|
||||
(`DISCORD_TOKEN`, `DISCORD_CLIENT_ID`, `DISCORD_GUILD_ID`)
|
||||
— alternativ `env_file` weglassen und die Variablen direkt im Stack setzen
|
||||
- Falls das Repo privat ist: **Authentication** aktivieren —
|
||||
Username: `D4rkst3r`, Password: ein Gitea-Token
|
||||
(Gitea → Einstellungen → Anwendungen → Token erzeugen, Scope `read:repository`)
|
||||
3. Unter **Environment variables** → **Advanced mode** die Werte aus der lokalen `.env`
|
||||
eintragen (`DISCORD_TOKEN`, `DISCORD_CLIENT_ID`, `DISCORD_GUILD_ID`,
|
||||
`COMMIT_CHANNEL_ID`, `GITEA_WEBHOOK_SECRET`)
|
||||
4. **Deploy the stack**
|
||||
|
||||
Updates später: Stack öffnen → **Pull and redeploy** (holt den neuesten Stand von `main`).
|
||||
|
||||
### Variante B: Manuell auf dem Server
|
||||
```
|
||||
git clone git@gitea:D4rkst3r/ecobot.git
|
||||
|
||||
Reference in New Issue
Block a user