core/server.py

27 lines
812 B
Python
Raw Normal View History

import subprocess
from granian.constants import Interfaces
from granian.server import Granian
2024-04-08 07:38:58 +00:00
2024-02-20 16:33:24 +00:00
from services.logger import root_logger as logger
2024-02-21 20:14:06 +00:00
from settings import PORT
def is_docker_container_running(name):
cmd = ['docker', 'ps', '-f', f'name={name}']
output = subprocess.run(cmd, capture_output=True, text=True).stdout
return name in output
2024-04-17 15:32:23 +00:00
if __name__ == "__main__":
logger.info("started")
if is_docker_container_running('uploader'):
granian_instance = Granian(
"main:app",
address="0.0.0.0", # noqa S104
port=PORT,
threads=4,
websockets=False,
interface=Interfaces.ASGI,
)
granian_instance.serve()
else:
logger.info("'uploader' is not running. But very needed !!! \(^.^'\)")