mirror of
https://github.com/DerTyp7/docker_minecraft_server_auto_starter.git
synced 2025-10-30 04:57:09 +01:00
Update Dockerfile and utils.py
This commit is contained in:
132
app/app.py
132
app/app.py
@@ -1,56 +1,76 @@
|
||||
from math import log
|
||||
import time
|
||||
from dockerHandler import DockerHandler
|
||||
from nginxHandler import NginxHandler
|
||||
from minecraftServerHandler import MinecraftServerHandler
|
||||
from requestHandler import RequestHandler
|
||||
import logging
|
||||
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
|
||||
|
||||
def main() -> None:
|
||||
try:
|
||||
logging.info('[INIT] initializing auto starter...')
|
||||
logging.info('[INIT] initializing docker handler...')
|
||||
docker_handler: DockerHandler = DockerHandler(
|
||||
'unix://var/run/docker.sock')
|
||||
logging.info('[INIT] docker handler initialized')
|
||||
|
||||
logging.info('[INIT] initializing nginx handler...')
|
||||
nginx_handler: NginxHandler = NginxHandler('/etc/nginx/nginx.conf')
|
||||
|
||||
nginx_handler.update_config_file(
|
||||
docker_handler)
|
||||
|
||||
logging.info('[INIT] nginx handler initialized')
|
||||
|
||||
logging.info('[INIT] initializing minecraft server handler...')
|
||||
minecraft_server_handler: MinecraftServerHandler = MinecraftServerHandler(
|
||||
docker_handler, nginx_handler)
|
||||
|
||||
# Find all Minecraft servers and add them to the MinecraftServerHandler instance
|
||||
for service_name in docker_handler.get_port_map().values():
|
||||
minecraft_server_handler.add_server(service_name)
|
||||
|
||||
logging.info('[INIT] wait 20 seconds before stopping all servers...')
|
||||
time.sleep(20)
|
||||
minecraft_server_handler.stop_all_servers()
|
||||
logging.info('[INIT] minecraft server handler initialized')
|
||||
|
||||
logging.info('[INIT] initializing request handlers...')
|
||||
# Create a RequestHandler instance for each port
|
||||
for port in docker_handler.get_port_map().keys():
|
||||
logging.info(f'[INIT] creating request handler for port {port}')
|
||||
request_handler: RequestHandler = RequestHandler(
|
||||
int(port), docker_handler, minecraft_server_handler)
|
||||
request_handler.start()
|
||||
logging.info('[INIT] request handlers initialized')
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f'An error occurred: {e}')
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
import os
|
||||
import time
|
||||
from dockerHandler import DockerHandler
|
||||
from nginxHandler import NginxHandler
|
||||
from minecraftServerHandler import MinecraftServerHandler
|
||||
from requestHandler import RequestHandler
|
||||
import logging
|
||||
from FakeMCServer.fake_mc_server import FakeMCServer
|
||||
import threading
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
|
||||
|
||||
def init_placeholder_servers():
|
||||
sleeping = FakeMCServer(port=20000, motd={
|
||||
"1": "sleeping!", "2": "§aCheck example.com for more information!"})
|
||||
starting = FakeMCServer(port=20001, motd={
|
||||
"1": "starting!", "2": "§aCheck example.com for more information!"})
|
||||
|
||||
# Create threads for each server initialization
|
||||
sleeping_thread = threading.Thread(target=sleeping.start_server)
|
||||
starting_thread = threading.Thread(target=starting.start_server)
|
||||
|
||||
# Start the threads
|
||||
sleeping_thread.start()
|
||||
starting_thread.start()
|
||||
|
||||
|
||||
def main() -> None:
|
||||
try:
|
||||
logging.info('[INIT] initializing placeholder servers...')
|
||||
init_placeholder_servers()
|
||||
logging.info('[INIT] placeholder servers initialized')
|
||||
|
||||
logging.info('[INIT] initializing auto starter...')
|
||||
logging.info('[INIT] initializing docker handler...')
|
||||
docker_handler: DockerHandler = DockerHandler(
|
||||
'unix://var/run/docker.sock')
|
||||
logging.info('[INIT] docker handler initialized')
|
||||
|
||||
logging.info('[INIT] initializing nginx handler...')
|
||||
nginx_handler: NginxHandler = NginxHandler('/etc/nginx/nginx.conf')
|
||||
|
||||
nginx_handler.update_config_file(
|
||||
docker_handler)
|
||||
|
||||
logging.info('[INIT] nginx handler initialized')
|
||||
|
||||
logging.info('[INIT] initializing minecraft server handler...')
|
||||
minecraft_server_handler: MinecraftServerHandler = MinecraftServerHandler(
|
||||
docker_handler, nginx_handler)
|
||||
|
||||
# Find all Minecraft servers and add them to the MinecraftServerHandler instance
|
||||
for service_name in docker_handler.get_port_map().values():
|
||||
minecraft_server_handler.add_server(service_name)
|
||||
|
||||
logging.info('[INIT] wait 20 seconds before stopping all servers...')
|
||||
time.sleep(20)
|
||||
minecraft_server_handler.stop_all_servers()
|
||||
logging.info('[INIT] minecraft server handler initialized')
|
||||
|
||||
logging.info('[INIT] initializing request handlers...')
|
||||
# Create a RequestHandler instance for each port
|
||||
for port in docker_handler.get_port_map().keys():
|
||||
logging.info(f'[INIT] creating request handler for port {port}')
|
||||
request_handler: RequestHandler = RequestHandler(
|
||||
int(port), docker_handler, minecraft_server_handler)
|
||||
request_handler.start()
|
||||
logging.info('[INIT] request handlers initialized')
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f'An error occurred: {e}')
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user