From 662a6ef34e928a7550b1fd9ba9dbae3c81da7c0d Mon Sep 17 00:00:00 2001 From: skylanix Date: Sat, 9 Aug 2025 00:32:03 +0200 Subject: [PATCH] =?UTF-8?q?Ajout=20surveillance=20Zabbix=20optionnelle=20e?= =?UTF-8?q?t=20migration=20Alpine=20-=20Migration=20vers=20Debian=20Trixie?= =?UTF-8?q?=20avec=20surveillance=20Zabbix=20optionnelle=20-=20Configure?= =?UTF-8?q?=20variables=20d'environnement=20pour=20activation=20conditionn?= =?UTF-8?q?elle=20-=20Met=20=C3=A0=20jour=20documentation=20avec=20instruc?= =?UTF-8?q?tions=20Docker=20compl=C3=A8tes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.example | 4 ++-- Dockerfile | 17 +++++++++++++++-- README.md | 6 +++--- __pycache__/bot.cpython-313.pyc | Bin 0 -> 6880 bytes docker-compose.yml | 16 +++++++--------- zabbix_agent2.conf | 7 ++----- 6 files changed, 29 insertions(+), 21 deletions(-) create mode 100644 __pycache__/bot.cpython-313.pyc diff --git a/.env.example b/.env.example index c943d44..36cd4eb 100644 --- a/.env.example +++ b/.env.example @@ -1,10 +1,10 @@ # Configuration Discord Bot -TOKEN=your_discord_bot_token_here +TOKEN=votre_token_discord STATUS=online INTERVAL=3600 # Configuration Zabbix (optionnel) ENABLE_ZABBIX=false ZABBIX_SERVER=zabbix-server.example.com -ZABBIX_HOSTNAME=mamie-henrriette-bot +ZABBIX_HOSTNAME=MamieHenriette ZABBIX_PORT=10050 \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 78bf22b..b72b160 100755 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,21 @@ -FROM alpine:3.22.1 +FROM debian:trixie-slim WORKDIR /app -RUN apk add --no-cache python3 py3-pip zabbix-agent2 +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && apt-get install -y --no-install-recommends \ + apt-utils \ + python3 \ + python3-pip \ + python3-venv \ + wget \ + && wget https://repo.zabbix.com/zabbix/7.4/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.4+debian12_all.deb \ + && dpkg -i zabbix-release_latest_7.4+debian12_all.deb \ + && apt-get update \ + && apt-get install -y --no-install-recommends zabbix-agent2 \ + && rm -rf /var/lib/apt/lists/* \ + && rm zabbix-release_latest_7.4+debian12_all.deb COPY requirements.txt . COPY bot.py . diff --git a/README.md b/README.md index 1da58b9..f43c289 100755 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ -# 👵 Mamie Henrriette - Discord Status Bot 🤖 +# 👵 Mamie Henriette - Discord Status Bot 🤖 ## 📖 Description -Mamie Henrriette est un bot Discord intelligent qui change automatiquement de statut, surveillant et gérant votre serveur avec une touche d'humour et de caractère. +Mamie Henriette est un bot Discord intelligent qui change automatiquement de statut, surveillant et gérant votre serveur avec une touche d'humour et de caractère. ## ✨ Fonctionnalités @@ -89,7 +89,7 @@ Dans votre fichier `.env` : ```bash ENABLE_ZABBIX=true ZABBIX_SERVER=votre-serveur-zabbix.com -ZABBIX_HOSTNAME=mamie-henrriette-bot +ZABBIX_HOSTNAME=MamieHenriette ``` ### Fichier `statuts.txt` diff --git a/__pycache__/bot.cpython-313.pyc b/__pycache__/bot.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9fd9ce4ec318e24d8da10a434dce3e18821e0ff2 GIT binary patch literal 6880 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 literal 0 HcmV?d00001 diff --git a/docker-compose.yml b/docker-compose.yml index 1c54d54..f6f46a0 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,18 +1,16 @@ services: discord-bot: - container_name: MamieHenrriette + container_name: MamieHenriette build: . restart: on-failure environment: - - TOKEN=your token + - TOKEN=VOTRE_TOKEN_DISCORD_ICI - STATUS=online - INTERVAL=3600 - - ENABLE_ZABBIX=${ENABLE_ZABBIX:-false} - - ZABBIX_SERVER=${ZABBIX_SERVER:-zabbix-server.example.com} - - ZABBIX_HOSTNAME=${ZABBIX_HOSTNAME:-mamie-henrriette-bot} + - ENABLE_ZABBIX=false + - ZABBIX_SERVER=zabbix-server.example.com + - ZABBIX_HOSTNAME=mamie-henriette-bot volumes: - ./statuts.txt:/app/statuts.txt - ports: - - "${ZABBIX_PORT:-10050}:10050" - profiles: - - default \ No newline at end of file + # ports: + # - "10050:10050" # Décommentez si ENABLE_ZABBIX=true \ No newline at end of file diff --git a/zabbix_agent2.conf b/zabbix_agent2.conf index 5cf04b4..4b6cfbe 100644 --- a/zabbix_agent2.conf +++ b/zabbix_agent2.conf @@ -5,7 +5,7 @@ Server=zabbix-server.example.com ServerActive=zabbix-server.example.com:10051 # Configuration de l'agent -Hostname=mamie-henrriette-bot +Hostname=MamieHenriette ListenPort=10050 ListenIP=0.0.0.0 @@ -24,7 +24,4 @@ UserParameter=discord.bot.memory,ps -o pid,vsz,rss,comm -p $(pgrep -f bot.py) | # Surveillance des logs UserParameter=discord.bot.errors,grep -c "ERROR" /var/log/discord-bot.log 2>/dev/null || echo 0 -UserParameter=discord.bot.warnings,grep -c "WARNING" /var/log/discord-bot.log 2>/dev/null || echo 0 - -# Vérification de la connectivité Discord -UserParameter=discord.connectivity,timeout 5 curl -s https://discord.com/api/v10/gateway >/dev/null && echo 1 || echo 0 \ No newline at end of file +UserParameter=discord.bot.warnings,grep -c "WARNING" /var/log/discord-bot.log 2>/dev/null || echo 0 \ No newline at end of file