java version + readme + auth servers

master
Andriy 2022-12-23 15:35:40 +02:00
parent 1d67ffb404
commit f3f36938df
5 changed files with 54 additions and 7 deletions

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
data/
db/
files/server.jar

View File

@ -1,12 +1,13 @@
FROM alpine:3.16.0
LABEL maintainer='Chris Kankiewicz <Chris@ChrisKankiewicz.com>'
LABEL maintainer='Andriy Cherniy <qugalet@m0e.space>'
# 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

12
README.org Normal file
View File

@ -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

28
docker-compose.yml Normal file
View File

@ -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