- /bug (alle Member): erstellt Gitea-Issue inkl. Screenshot-Upload als Asset; bug_reports-Tabelle für den Rückkanal — Issue geschlossen (issues-Webhook) → DM an den Reporter - Auto-Thread '💬 Devlog <Datum>' unter jedem Devlog-Post (Setting, Default an) - Watchdog: prüft Setting watchdog_urls alle 2 min, DM an Admin nach 2 Fails in Folge + Entwarnung mit Downtime-Dauer - Setup-Seite: Bug-Repo, Threads-Toggle, Watchdog-URLs; Env GITEA_API_TOKEN/GITEA_URL Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
37 lines
1.4 KiB
YAML
37 lines
1.4 KiB
YAML
# EcoBot Stack — deploybar über Portainer (Stacks → Add stack)
|
|
services:
|
|
ecobot:
|
|
build: .
|
|
image: ecobot:latest
|
|
container_name: ecobot
|
|
restart: unless-stopped
|
|
# Werte kommen per Interpolation: lokal aus der .env im Projektordner (liest
|
|
# docker compose automatisch), in Portainer aus den Stack-Environment-Variables
|
|
environment:
|
|
DISCORD_TOKEN: ${DISCORD_TOKEN}
|
|
DISCORD_CLIENT_ID: ${DISCORD_CLIENT_ID}
|
|
DISCORD_GUILD_ID: ${DISCORD_GUILD_ID:-}
|
|
COMMIT_CHANNEL_ID: ${COMMIT_CHANNEL_ID}
|
|
DEVLOG_CHANNEL_ID: ${DEVLOG_CHANNEL_ID}
|
|
DEVLOG_POST_SECRET: ${DEVLOG_POST_SECRET}
|
|
GITEA_API_TOKEN: ${GITEA_API_TOKEN:-}
|
|
GITEA_URL: ${GITEA_URL:-https://git.d4rkst3r.de}
|
|
GITEA_WEBHOOK_SECRET: ${GITEA_WEBHOOK_SECRET}
|
|
DISCORD_CLIENT_SECRET: ${DISCORD_CLIENT_SECRET}
|
|
SESSION_SECRET: ${SESSION_SECRET}
|
|
ADMIN_DISCORD_ID: ${ADMIN_DISCORD_ID}
|
|
PUBLIC_URL: ${PUBLIC_URL:-https://bot.d4rkst3r.de}
|
|
# Lokale Zeitzone — wichtig für den Wochen-Rückblick (sonntags 20:00) und Datumsangaben
|
|
TZ: ${TZ:-Europe/Berlin}
|
|
DB_PATH: /app/data/ecobot.db
|
|
# HTTP-Endpoint für Gitea-Webhooks + Webinterface
|
|
# NPM leitet bot.d4rkst3r.de → host.docker.internal:3080
|
|
ports:
|
|
- "3080:3080"
|
|
volumes:
|
|
# SQLite & Co. überleben Container-Neustarts
|
|
- ecobot_data:/app/data
|
|
|
|
volumes:
|
|
ecobot_data:
|