Source Code added
This commit is contained in:
parent
800376eafd
commit
9efa9bc6dd
3912 changed files with 754770 additions and 2 deletions
57
machine-learning/immich_ml/__main__.py
Normal file
57
machine-learning/immich_ml/__main__.py
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
import os
|
||||
import signal
|
||||
import subprocess
|
||||
from ipaddress import ip_address
|
||||
from pathlib import Path
|
||||
|
||||
from .config import log, non_prefixed_settings, settings
|
||||
|
||||
if source_ref := os.getenv("IMMICH_SOURCE_REF"):
|
||||
log.info(f"Initializing Immich ML [{source_ref}]")
|
||||
else:
|
||||
log.info("Initializing Immich ML")
|
||||
|
||||
module_dir = Path(__file__).parent
|
||||
|
||||
|
||||
def is_ipv6(host: str) -> bool:
|
||||
try:
|
||||
return ip_address(host).version == 6
|
||||
except ValueError:
|
||||
return False
|
||||
|
||||
|
||||
bind_host = non_prefixed_settings.immich_host
|
||||
if is_ipv6(bind_host):
|
||||
bind_host = f"[{bind_host}]"
|
||||
bind_address = f"{bind_host}:{non_prefixed_settings.immich_port}"
|
||||
|
||||
try:
|
||||
with subprocess.Popen(
|
||||
[
|
||||
"python",
|
||||
"-m",
|
||||
"gunicorn",
|
||||
"immich_ml.main:app",
|
||||
"-k",
|
||||
"immich_ml.config.CustomUvicornWorker",
|
||||
"-c",
|
||||
module_dir / "gunicorn_conf.py",
|
||||
"-b",
|
||||
bind_address,
|
||||
"-w",
|
||||
str(settings.workers),
|
||||
"-t",
|
||||
str(settings.worker_timeout),
|
||||
"--log-config-json",
|
||||
module_dir / "log_conf.json",
|
||||
"--keep-alive",
|
||||
str(settings.http_keepalive_timeout_s),
|
||||
"--graceful-timeout",
|
||||
"10",
|
||||
],
|
||||
) as cmd:
|
||||
cmd.wait()
|
||||
except KeyboardInterrupt:
|
||||
cmd.send_signal(signal.SIGINT)
|
||||
exit(cmd.returncode)
|
||||
Loading…
Add table
Add a link
Reference in a new issue