Maxime Killinger d180cb700c
All checks were successful
🚀 Docker Build and Push / build-and-push (push) Successful in 59s
refactor: optimize docker, robust config & country handling
- optimize(docker): use distroless/python3-debian12 & multi-stage build
- feat(app): replace Gunicorn with Waitress (pure python)
- feat(countries): replace static list with pycountry (dynamic & complete)
- feat(config): enforce mandatory APPRISE_URL (fatal if missing)
- feat(logging): add structured logging and graceful shutdown signal handling
- docs: update README with required env var and correct usage
2025-12-31 18:46:21 +01:00

CrowdSec Notify

Service de notification intelligent pour CrowdSec qui regroupe les alertes par IP.

Fonctionnalités

  • 📊 Regroupe les alertes par IP (évite les doublons)
  • 🌍 Affiche le nom complet du pays
  • 🔗 Inclut un lien WHOIS pour chaque IP
  • 📱 Envoie les notifications via Apprise (Telegram)

Déploiement

L'image Docker est automatiquement construite et poussée sur gitea.killinger.fr/services/crowdsec-notify:latest

Variables d'environnement

Variable Description Défaut
APPRISE_URL URL du endpoint Apprise Requis

Docker Run

docker run -d \
  --name crowdsec-notify \
  --restart unless-stopped \
  -e APPRISE_URL=http://your-apprise-url/notify/my_alert_config \
  -p 5000:5000 \
  crowdsec-notify:latest

Configuration CrowdSec

Dans /etc/crowdsec/notifications/http.yaml :

type: http
name: apprise_alert
group_wait: 5m
group_threshold: 10
format: |
  {{ . | toJson }}
url: http://crowdsec-notify:5000/crowdsec
method: POST
headers:
  Content-Type: application/json

Auteur

Maxime Killinger

Description
No description provided
Readme 123 KiB
Languages
Python 83.4%
Dockerfile 16.6%