diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..35b7f5d --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +data/ +db/ +files/server.jar \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 56f9dea..72a4ba3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,13 @@ FROM alpine:3.16.0 -LABEL maintainer='Chris Kankiewicz ' +LABEL maintainer='Andriy Cherniy ' # Minecraft version -ARG MC_VERSION=1.19.1 +ARG MC_VERSION=bta ARG MC_JAR_SHA1=8399e1211e95faa421c1507b322dbeae86d604df # Set default JVM options -ENV _JAVA_OPTIONS '-Xms256M -Xmx1024M' +ENV _JAVA_OPTIONS '-Xms256M -Xmx4G' +ARG JAVA_VERSION=19 # Create Minecraft directories RUN mkdir -pv /opt/minecraft /etc/minecraft @@ -22,13 +23,16 @@ COPY files/ops /usr/local/bin/ops RUN chmod +x /usr/local/bin/ops # Install dependencies, fetch Minecraft server jar file and chown files -ARG JAR_URL=https://launcher.mojang.com/v1/objects/${MC_JAR_SHA1}/server.jar +#ARG JAR_URL=https://launcher.mojang.com/v1/objects/${MC_JAR_SHA1}/server.jar RUN apk add --update ca-certificates nss tzdata wget \ - && apk add openjdk17-jre-headless \ - && wget -O /opt/minecraft/minecraft_server.jar ${JAR_URL} \ - && apk del --purge wget && rm -rf /var/cache/apk/* \ + && apk add openjdk19-jre \ + #&& wget -O /opt/minecraft/minecraft_server.jar ${JAR_URL} \ + #&& apk del --purge wget && rm -rf /var/cache/apk/* \ + && rm -rf /var/cache/apk/* \ && chown -R minecraft:minecraft /etc/minecraft /opt/minecraft +COPY files/server.jar /opt/minecraft/minecraft_server.jar + # Define volumes VOLUME /etc/minecraft diff --git a/README.md b/README.md.old similarity index 100% rename from README.md rename to README.md.old diff --git a/README.org b/README.org new file mode 100644 index 0000000..232b020 --- /dev/null +++ b/README.org @@ -0,0 +1,12 @@ +* Minecraft Docker +Dockerfile and docker-compose for your own server jar + +** Usage +Change your JAVA_VERSION in [[./Dockerfile][Dockerfile]] and build: +#+BEGIN_SRC shell + docker compose build +#+END_SRC +Place server.jar to ~files/~ folder, change your [[./docker-compose.yml][Docker Compose]] file and run: +#+BEGIN_SRC shell + docker compose up -d +#+END_SRC diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..f432261 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,28 @@ +services: + db: + image: postgres + volumes: + - ./db:/var/lib/postgresql/data + environment: + - POSTGRES_DB=rpz_auth + - POSTGRES_USER=postgres + - POSTGRES_PASSWORD=postgres + + auth: + build: ./auth + depends_on: + - db + restart: unless-stopped + + minecraft: + build: . + stdin_open: true # docker run -i + tty: true # docker run -t + restart: unless-stopped + volumes: + - ./data:/etc/minecraft + ports: + - 25565:25565 + depends_on: + - db + - auth