diff --git a/Dockerfile b/Dockerfile index 5211f16..03d325d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,18 +7,6 @@ ENV PYTHONUNBUFFERED=1 # Install Python and pip RUN apt-get update && apt-get install -y python3 python3-pip python3-venv -# Install Docker -RUN apt-get update && apt-get install -y \ - apt-transport-https \ - ca-certificates \ - curl \ - gnupg \ - lsb-release && \ - curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - && \ - echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list && \ - apt-get update && \ - apt-get install -y docker-ce docker-ce-cli containerd.io - # Create a virtual environment and activate it RUN python3 -m venv /app/venv ENV PATH="/app/venv/bin:$PATH" @@ -33,8 +21,8 @@ WORKDIR /app RUN pip install --upgrade pip RUN pip install -r requirements.txt -# Expose port 80 for Nginx -EXPOSE 80 +# Expose port 25560 - 25570 +EXPOSE 25560-25570 # Start Nginx and run the Python app -CMD docker compose up -d --remove-orphans && service nginx start && exec python app.py \ No newline at end of file +CMD service nginx start && exec python app.py \ No newline at end of file diff --git a/app/docker-compose.yml b/app/docker-compose.yml deleted file mode 100644 index 47d8287..0000000 --- a/app/docker-compose.yml +++ /dev/null @@ -1,16 +0,0 @@ -version: "3.9" - -services: - mc_placeholder_starting: - container_name: mc_placeholder_starting - image: itzg/minecraft-server - ports: - - "20000:20000" - environment: - type: "PAPER" - EULA: "TRUE" - MOTD: "starting..." - MAX_PLAYERS: "0" - MAX_MEMORY: "200M" - SERVER_PORT: "20000" - ONLINE_MODE: "FALSE" diff --git a/app/nginxHandler.py b/app/nginxHandler.py index 1a4c0c9..103b91d 100644 --- a/app/nginxHandler.py +++ b/app/nginxHandler.py @@ -24,6 +24,7 @@ class NginxHandler: print(f.read()) def setup_config_file(self, port_ip_map, current_container_ip): + proxy_timeout = "300ms" self.stop() print('Setting up NGINX config file...') print('port_ip_map: {}'.format(port_ip_map)) @@ -43,6 +44,12 @@ class NginxHandler: nginx_conf.write(' server {\n') nginx_conf.write(' listen {}:{};\n'.format( current_container_ip, port)) + + nginx_conf.write(' proxy_connect_timeout {};\n'.format( + proxy_timeout)) + nginx_conf.write(' proxy_timeout {};\n'.format( + proxy_timeout)) + nginx_conf.write(' proxy_pass upstream_{};\n'.format(port)) nginx_conf.write(' }\n') nginx_conf.write('}\n') diff --git a/docker-compose.yml b/docker-compose.yml index 4324be9..d56122b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,7 +9,7 @@ networks: - subnet: 172.20.0.0/16 services: - minecraft_server_auto_starter: + auto_starter: build: . ports: - 25565:25565 @@ -30,7 +30,7 @@ services: type: "PAPER" EULA: "TRUE" MOTD: "TEST1" - #! Dont change SERVER_PORT. Use PORT_IP_MAP in minecraft_server_auto_starter instead. + #! Dont change SERVER_PORT. Use PORT_IP_MAP in auto_starter instead. #! SERVER_PORT default is "25565" networks: mc_network: