add daemonize flag to archivebox server

This commit is contained in:
Nick Sweeting 2024-10-02 19:46:48 -07:00
parent 035a14b6ea
commit 32167de936
No known key found for this signature in database
2 changed files with 21 additions and 14 deletions

View file

@ -58,6 +58,11 @@ def main(args: Optional[List[str]]=None, stdin: Optional[IO]=None, pwd: Optional
action='store_true',
help='Run archivebox manage createsuperuser before starting the server',
)
parser.add_argument(
'--daemonize',
action='store_true',
help='Run the server in the background as a daemon',
)
command = parser.parse_args(args or ())
reject_stdin(__command__, stdin)
@ -68,6 +73,7 @@ def main(args: Optional[List[str]]=None, stdin: Optional[IO]=None, pwd: Optional
init=command.init,
quick_init=command.quick_init,
createsuperuser=command.createsuperuser,
daemonize=command.daemonize,
out_dir=Path(pwd) if pwd else DATA_DIR,
)

View file

@ -266,8 +266,8 @@ def stop_worker(supervisor, daemon_name):
def start_server_workers(host='0.0.0.0', port='8000'):
supervisor = get_or_create_supervisord_process(daemonize=False)
def start_server_workers(host='0.0.0.0', port='8000', daemonize=False):
supervisor = get_or_create_supervisord_process(daemonize=daemonize)
bg_workers = [
{
@ -303,6 +303,7 @@ def start_server_workers(host='0.0.0.0', port='8000'):
start_worker(supervisor, worker)
print()
if not daemonize:
try:
watch_worker(supervisor, "worker_daphne")
except KeyboardInterrupt: