From b12259b0c80ce8341645c7fae74bc9d08fbd814a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Granstr=C3=B6m?= Date: Thu, 12 Jan 2017 15:42:58 +0100 Subject: [PATCH] Gracefully shutdown on SIGTERM to support docker environment and docker stop --- src/server.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/server.py b/src/server.py index cf90bcdf5b7a..5848c4dbcf45 100644 --- a/src/server.py +++ b/src/server.py @@ -6,6 +6,7 @@ import glob import warnings import logging +import signal from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer from rasa_nlu.train import do_train from rasa_nlu.config import RasaNLUConfig @@ -244,7 +245,12 @@ def create_argparser(): logging.captureWarnings(True) logging.debug(config.view()) try: + def stop(signal_number, frame): + raise KeyboardInterrupt() + + signal.signal(signal.SIGTERM, stop) server = RasaNLUServer(config) server.start() + except KeyboardInterrupt: server.stop()