32 lines
1.1 KiB
Docker
32 lines
1.1 KiB
Docker
FROM debian:12
|
|
|
|
ARG gameid
|
|
|
|
RUN echo "Building image with gameid: $gameid"
|
|
|
|
#Update
|
|
RUN apt update -y && apt upgrade -y
|
|
|
|
RUN apt install -y wget curl unzip git g++ make libc6-dev cmake libpng-dev libjpeg-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev libzstd-dev libluajit-5.1-dev gettext libsdl2-dev
|
|
|
|
#Install minetest
|
|
RUN useradd -ms /bin/bash minetest
|
|
USER minetest
|
|
WORKDIR /home/minetest
|
|
|
|
RUN git clone --depth 1 https://github.com/minetest/minetest.git minetest-source
|
|
RUN mkdir /home/minetest/minetest-source/build
|
|
WORKDIR /home/minetest/minetest-source/build
|
|
RUN cmake -DBUILD_SERVER=TRUE -DBUILD_CLIENT=FALSE -DENABLE_CURL=ON -DENABLE_CURSES=ON -DENABLE_POSTGRES=ON -DENABLE_SOUND=OFF ..
|
|
RUN make -j 6
|
|
USER root
|
|
WORKDIR /home/minetest/minetest-source/build
|
|
RUN make install
|
|
|
|
RUN mkdir -p /usr/local/share/minetest/games
|
|
|
|
USER minetest
|
|
EXPOSE 30000/udp
|
|
RUN echo "#!/bin/bash\n/usr/local/bin/minetestserver --gameid $gameid" > ./entrypoint.sh
|
|
RUN chmod +x entrypoint.sh
|
|
ENTRYPOINT ["./entrypoint.sh"] |