From c47a8cdf162f61cd1b0875d92996087bbbd3c03e Mon Sep 17 00:00:00 2001 From: Debanjum Singh Solanky Date: Sat, 2 Oct 2021 16:16:33 -0700 Subject: [PATCH] Allow configuring host, port or unix socket of server via CLI --- src/main.py | 6 ++++-- src/utils/cli.py | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main.py b/src/main.py index a4970f80..bf2f819f 100644 --- a/src/main.py +++ b/src/main.py @@ -1,6 +1,5 @@ # Standard Packages import sys -import pathlib from typing import Optional # External Packages @@ -121,4 +120,7 @@ if __name__ == '__main__': model, search_config = initialize_search(args.config, args.regenerate, args.verbose) # Start Application Server - uvicorn.run(app) + if args.socket: + uvicorn.run(app, proxy_headers=True, uds=args.socket) + else: + uvicorn.run(app, host=args.host, port=args.port) diff --git a/src/utils/cli.py b/src/utils/cli.py index 4e00d4a4..b8c725f4 100644 --- a/src/utils/cli.py +++ b/src/utils/cli.py @@ -19,6 +19,10 @@ def cli(args=None): parser.add_argument('--config-file', '-c', type=pathlib.Path, help="YAML file with user configuration") parser.add_argument('--regenerate', action='store_true', default=False, help="Regenerate model embeddings from source files. Default: false") parser.add_argument('--verbose', '-v', action='count', default=0, help="Show verbose conversion logs. Default: 0") + parser.add_argument('--host', type=str, default='127.0.0.1', help="Host address of the server. Default: 127.0.0.1") + parser.add_argument('--port', '-p', type=int, default=8000, help="Port of the server. Default: 8000") + parser.add_argument('--socket', type=pathlib.Path, help="Path to UNIX socket for server. Use to run server behind reverse proxy. Default: /tmp/uvicorn.sock") + args = parser.parse_args(args) if not (args.config_file or args.org_files):