Administration dans un conteneur Docker (Dockerfile, exemples compose et nginx) ; arrêt propre sur SIGTERM

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Mf2kATMtqVABHSYdxJMnim
This commit is contained in:
FabriceandClaude Opus 5.5 committed 2026-10-09 16:59:27 +00:00
1 parent 4852361ea6
commit 02473fafbf
6 files changed
+89 -8

No files matched your search

+9 -2
View File
@@ -17,12 +17,13 @@ Sécurité (voir aussi securite.py) :
"""
import io
import json
import ssl
import mimetypes
import os
import platform
import re
import shutil
import signal
import ssl
import string
import threading
import webbrowser
@@ -466,7 +467,8 @@ class Application:
raccourcis = [("Dossier personnel", os.path.expanduser("~")), ("Site", self.racine)]
if r.q("v"):
raccourcis.append(("Ce voyage", os.path.join(self.racine, r.q("v"))))
if platform.system() == "Darwin" and os.path.isdir("/Volumes"):
# /Volumes : disques du Mac, y compris vus depuis le conteneur Docker.
if os.path.isdir("/Volumes"):
raccourcis += [(d, os.path.join("/Volumes", d)) for d in sorted(os.listdir("/Volumes"))
if not d.startswith(".")]
elif platform.system() == "Windows":
@@ -908,6 +910,11 @@ def lancer(racine, port=8765, ouvrir=True, distant=False, certificat=None, cle=N
print(" (Ctrl+C pour arrêter)")
if ouvrir:
threading.Timer(0.5, lambda: webbrowser.open(url)).start()
# « docker stop » envoie SIGTERM : on s'arrête aussitôt, comme sur Ctrl+C.
def sur_sigterm(*_):
raise KeyboardInterrupt
signal.signal(signal.SIGTERM, sur_sigterm)
try:
serveur.serve_forever()
except KeyboardInterrupt: