From eda9177b546822497deaa383c5baaae4a018f0da Mon Sep 17 00:00:00 2001 From: ppfeiffer Date: Fri, 20 Feb 2026 22:56:36 +0100 Subject: [PATCH] chore: Docker-Dateien und alle Docker-Referenzen entfernt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Dockerfile, docker-compose.yml, .dockerignore gelöscht - CHANGELOG.md: Einträge v0.06.01 (Docker-Support) und v0.07.00 entfernt - docs/bot-beschreibung.md: Docker-Abschnitte und Tabellenzeilen bereinigt Co-Authored-By: Claude Sonnet 4.6 --- .dockerignore | 7 ------- CHANGELOG.md | 16 ---------------- Dockerfile | 19 ------------------- docker-compose.yml | 24 ------------------------ docs/bot-beschreibung.md | 20 +------------------- 5 files changed, 1 insertion(+), 85 deletions(-) delete mode 100644 .dockerignore delete mode 100644 Dockerfile delete mode 100644 docker-compose.yml diff --git a/.dockerignore b/.dockerignore deleted file mode 100644 index 01c1aa9..0000000 --- a/.dockerignore +++ /dev/null @@ -1,7 +0,0 @@ -venv/ -.git/ -__pycache__/ -*.db* -.env -docs/ -conf/ diff --git a/CHANGELOG.md b/CHANGELOG.md index 89e4c27..295c9d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -329,15 +329,6 @@ - **Standard-Theme**: Hell-Theme (Light) ist jetzt der Default für neue Besucher (bisher: Dark). Gespeicherte Benutzereinstellung bleibt erhalten. -## [0.07.00] - 2026-02-18 - -### Changed -- **Dockerfile**: `EXPOSE` von 8080 auf 8081 korrigiert (entspricht Web-Port in config.yaml). -- **Dockerfile**: `HEALTHCHECK` hinzugefügt – prüft `/api/stats` alle 30s, - Timeout 5s, Start-Wartezeit 20s, max. 3 Versuche. -- **docker-compose.yml**: `healthcheck` und `logging` (json-file, 10 MB / 3 Dateien) ergänzt. -- **conf/config.yaml**: Version auf 0.07.00 und Verbindungsdaten aktualisiert. - ## [0.06.15] - 2026-02-18 ### Added @@ -460,13 +451,6 @@ - Refactor: Gemeinsames `static/js/app.js` Modul extrahiert - Eliminiert ~360 Zeilen doppelten Code aus allen 5 Seiten (Navbar, Sidebar, Theme, escapeHtml) - Sidebar-HTML wird jetzt dynamisch per `initPage()` injiziert mit automatischer Active-Link-Erkennung -## [0.06.01] - 2026-02-17 -### Added -- Dockerfile fuer Container-Betrieb (python:3.12-slim) -- docker-compose.yml mit Host-Netzwerk und Named Volume fuer SQLite -- conf/ Verzeichnis mit Beispiel-Konfigurationsdateien fuer Docker -- .dockerignore fuer saubere Docker-Builds - ## [0.06.00] - 2026-02-17 ### Summary - Node-Detail-Modal mit Minikarte im Dashboard diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 7935523..0000000 --- a/Dockerfile +++ /dev/null @@ -1,19 +0,0 @@ -FROM python:3.12-slim - -WORKDIR /app - -# Install dependencies -COPY requirements.txt . -RUN pip install --no-cache-dir -r requirements.txt - -# Copy application -COPY meshbot/ meshbot/ -COPY static/ static/ -COPY main.py . - -EXPOSE 8081 - -HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \ - CMD python -c "import urllib.request; urllib.request.urlopen('http://localhost:8081/api/stats')" || exit 1 - -CMD ["python", "main.py"] diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 5f765cd..0000000 --- a/docker-compose.yml +++ /dev/null @@ -1,24 +0,0 @@ -services: - meshdd-bot: - build: . - network_mode: host - volumes: - - ./conf/config.yaml:/app/config.yaml:ro - - ./conf/env:/app/.env:ro - - ./conf/scheduler.yaml:/app/scheduler.yaml - - meshdd-data:/app/data - restart: unless-stopped - healthcheck: - test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8081/api/stats')"] - interval: 30s - timeout: 5s - start_period: 20s - retries: 3 - logging: - driver: "json-file" - options: - max-size: "10m" - max-files: "3" - -volumes: - meshdd-data: diff --git a/docs/bot-beschreibung.md b/docs/bot-beschreibung.md index 247e7b1..2a10bb5 100644 --- a/docs/bot-beschreibung.md +++ b/docs/bot-beschreibung.md @@ -35,7 +35,6 @@ - Benutzerverwaltung mit Rollen (public / user / admin) - Hot-Reload für alle Konfigurationsdateien - Paket-Log mit Typ-Filterung -- Docker-ready mit docker-compose --- @@ -83,7 +82,7 @@ | Charts | Chart.js | | NINA-API | aiohttp (async HTTP-Polling) | | Konfiguration | YAML (config.yaml, scheduler.yaml, nina.yaml) | -| Deployment | systemd Service / Docker + docker-compose | +| Deployment | systemd Service | --- @@ -528,21 +527,6 @@ sudo systemctl start meshdd-bot journalctl -u meshdd-bot -f ``` -### Docker / docker-compose - -```bash -# Bauen und starten -docker compose up -d - -# Logs -docker compose logs -f - -# Stoppen -docker compose down -``` - -`docker-compose.yml` verwendet Host-Netzwerk (direkter TCP-Zugriff auf Meshtastic-Node), Named Volume für SQLite, JSON-File-Logging (10 MB / 3 Dateien) und Health-Check (`/api/stats` alle 30s). - ### Direkt (Entwicklung) ```bash @@ -571,7 +555,6 @@ Die folgende Tabelle zeigt die wichtigsten Entwicklungsmeilensteine von der erst | **0.05.03** | 2026-02-16 | **Secrets in .env:** AUTH_SECRET_KEY und SMTP-Einstellungen aus config.yaml in Umgebungsvariablen ausgelagert | | **0.05.04** | 2026-02-16 | **Admin erweitert:** Benutzer direkt anlegen mit Passwort, Bearbeiten-Modal, Passwort-Reset, Passwort-Generator | | **0.06.00** | 2026-02-17 | **Node-Detail-Modal:** Klick auf Node → Modal mit allen Feldern + Leaflet-Minikarte | -| **0.06.01** | 2026-02-17 | **Docker-Support:** Dockerfile, docker-compose.yml, .dockerignore | | **0.06.02** | 2026-02-17 | **Geteiltes app.js:** ~360 Zeilen duplizierten Frontend-Code in gemeinsames Modul extrahiert | | **0.06.03** | 2026-02-17 | **WebSocket-Sicherheit:** `auth_clients` vs. `clients` — Nachrichten nur an authentifizierte WS-Clients | | **0.06.05** | 2026-02-17 | **Dark-Mode-Karte + Charts:** CartoDB Dark Matter, 3 Charts (Kanal, Hops, Hardware) | @@ -580,7 +563,6 @@ Die folgende Tabelle zeigt die wichtigsten Entwicklungsmeilensteine von der erst | **0.06.13** | 2026-02-18 | **Karten-Alter-Transparenz:** Nodes >72h werden ausgeblendet; Legende mit Alter-Sektion | | **0.06.14** | 2026-02-18 | **Pakettypen-Chart:** Viertes Doughnut-Chart mit Pakettyp-Verteilung 24h | | **0.06.15** | 2026-02-18 | **Scheduler Template-Variablen:** `{time}`, `{date}`, `{weekday}`, `{nodes}` etc.; Footer auf allen Seiten | -| **0.07.00** | 2026-02-18 | **Docker-Verbesserungen:** HEALTHCHECK, Logging-Config, korrigierter Port | | **0.08.00** | 2026-02-19 | **NINA-Integration:** BBK Warn-App angebunden; duales Polling (Dashboard + mapData); Konfigurationsseite; Monitor-Modus; Live-Tabelle via WebSocket | | **0.08.01** | 2026-02-19 | **NINA Resend-Loop:** Aktive Warnungen werden zyklisch wiederholt; AGS-Code-Tabelle statt Badges | | **0.08.02** | 2026-02-19 | **NINA geografische Filterung:** mapData nur noch ohne AGS-Codes aktiv (verhindert bundesweite Meldungen) |