healthcheck mis dans le Dockerfile à la place d'un scripte

This commit is contained in:
sky
2025-09-14 02:38:35 +02:00
parent 9b11a42d11
commit 3cd3decca1
2 changed files with 2 additions and 29 deletions

View File

@@ -30,12 +30,12 @@ COPY ./webapp ./webapp
COPY ./twitchbot ./twitchbot COPY ./twitchbot ./twitchbot
COPY zabbix_agent2.conf /etc/zabbix/zabbix_agent2.conf COPY zabbix_agent2.conf /etc/zabbix/zabbix_agent2.conf
COPY start.sh /start.sh COPY start.sh /start.sh
COPY healthcheck.py .
RUN python3 -m venv /app/venv && \ RUN python3 -m venv /app/venv && \
/app/venv/bin/pip install --no-cache-dir -r requirements.txt && \ /app/venv/bin/pip install --no-cache-dir -r requirements.txt && \
chmod +x /start.sh chmod +x /start.sh
HEALTHCHECK --interval=30s --timeout=10s --start-period=2m CMD /app/venv/bin/python /app/healthcheck.py HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD pgrep python > /dev/null || exit 1
CMD ["/start.sh"] CMD ["/start.sh"]

View File

@@ -1,27 +0,0 @@
#!/usr/bin/env python3
import subprocess
import sys
import os
def check_process():
"""Vérifie si le processus Python principal est en cours d'exécution"""
try:
# Vérifier si un processus python est actif
result = subprocess.run(
["pgrep", "python"],
capture_output=True,
text=True
)
return result.returncode == 0
except Exception:
return False
def main():
if check_process():
sys.exit(0) # Succès
else:
sys.exit(1) # Échec
if __name__ == "__main__":
main()