FROM debian:12-slim ENV DEBIAN_FRONTEND=noninteractive ENV LANG=C.UTF-8 RUN apt-get update && \ apt-get install -y --no-install-recommends \ wget curl gnupg ca-certificates \ netcat-openbsd \ imagemagick \ procps \ zip unzip \ python3 python3-pip \ nginx && \ pip3 install --break-system-packages huggingface-hub flask && \ wget -qO- https://packages.adoptium.net/artifactory/api/gpg/key/public | \ gpg --dearmor -o /usr/share/keyrings/adoptium.gpg && \ echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] \ https://packages.adoptium.net/artifactory/deb bookworm main" \ > /etc/apt/sources.list.d/adoptium.list && \ apt-get update && \ apt-get install -y --no-install-recommends \ openjdk-17-jre-headless \ temurin-11-jre && \ (dpkg --configure -a || true) && \ rm -rf /var/lib/apt/lists/* && apt-get clean WORKDIR /opt/server RUN mkdir -p \ /opt/server/bungee/plugins \ /opt/server/backend/plugins RUN wget -O /opt/server/bungee/BungeeCord.jar \ "https://hub.spigotmc.org/jenkins/job/BungeeCord/2065/artifact/bootstrap/target/BungeeCord.jar" && \ wget -O /opt/server/bungee/plugins/EaglerXServer.jar \ "https://github.com/lax1dude/eaglerxserver/releases/latest/download/EaglerXServer.jar" && \ wget -O /opt/server/bungee/sqlite-jdbc.jar \ "https://github.com/xerial/sqlite-jdbc/releases/download/3.45.3.0/sqlite-jdbc-3.45.3.0.jar" RUN wget -O /opt/server/backend/server.jar \ "https://github.com/Wind-Development/WindSpigot/releases/download/v2.1.2-hotfix/WindSpigot-2.1.2.jar" RUN echo "eula=true" > /opt/server/backend/eula.txt COPY nginx.conf /etc/nginx/nginx.conf COPY sync_world.py /opt/server/sync_world.py COPY web.py /opt/server/web.py COPY start.sh /opt/server/start.sh COPY plugins/world.jar /opt/server/backend/plugins RUN chmod +x \ /opt/server/start.sh \ /opt/server/sync_world.py \ /opt/server/web.py && \ chmod -R 755 /opt/server EXPOSE 7860 CMD ["/opt/server/start.sh"]