chore: Docker-Dateien und alle Docker-Referenzen entfernt

- 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 <noreply@anthropic.com>
This commit is contained in:
ppfeiffer 2026-02-20 22:56:36 +01:00
parent c443a9f26d
commit eda9177b54
5 changed files with 1 additions and 85 deletions

View file

@ -1,7 +0,0 @@
venv/
.git/
__pycache__/
*.db*
.env
docs/
conf/

View file

@ -329,15 +329,6 @@
- **Standard-Theme**: Hell-Theme (Light) ist jetzt der Default für neue Besucher - **Standard-Theme**: Hell-Theme (Light) ist jetzt der Default für neue Besucher
(bisher: Dark). Gespeicherte Benutzereinstellung bleibt erhalten. (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 ## [0.06.15] - 2026-02-18
### Added ### Added
@ -460,13 +451,6 @@
- Refactor: Gemeinsames `static/js/app.js` Modul extrahiert - Refactor: Gemeinsames `static/js/app.js` Modul extrahiert
- Eliminiert ~360 Zeilen doppelten Code aus allen 5 Seiten (Navbar, Sidebar, Theme, escapeHtml) - 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 - 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 ## [0.06.00] - 2026-02-17
### Summary ### Summary
- Node-Detail-Modal mit Minikarte im Dashboard - Node-Detail-Modal mit Minikarte im Dashboard

View file

@ -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"]

View file

@ -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:

View file

@ -35,7 +35,6 @@
- Benutzerverwaltung mit Rollen (public / user / admin) - Benutzerverwaltung mit Rollen (public / user / admin)
- Hot-Reload für alle Konfigurationsdateien - Hot-Reload für alle Konfigurationsdateien
- Paket-Log mit Typ-Filterung - Paket-Log mit Typ-Filterung
- Docker-ready mit docker-compose
--- ---
@ -83,7 +82,7 @@
| Charts | Chart.js | | Charts | Chart.js |
| NINA-API | aiohttp (async HTTP-Polling) | | NINA-API | aiohttp (async HTTP-Polling) |
| Konfiguration | YAML (config.yaml, scheduler.yaml, nina.yaml) | | 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 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) ### Direkt (Entwicklung)
```bash ```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.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.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.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.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.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) | | **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.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.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.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.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.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) | | **0.08.02** | 2026-02-19 | **NINA geografische Filterung:** mapData nur noch ohne AGS-Codes aktiv (verhindert bundesweite Meldungen) |