38 lines
1.1 KiB
Docker

FROM alpine:3.21
ARG RR_VERSION
# Install Essential Utilities
RUN apk update
RUN apk add bash git curl build-base unzip libc++-dev libc-dev lld cmake ninja make
# Install dependencies
RUN apk add curl-dev sdl2-dev zlib-dev libpng-dev libogg-dev libvorbis-dev libvpx-dev
RUN apk add --update --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/main libyuv libyuv-dev
# Create a 'ringracers' group and user
RUN addgroup -S ringracers && adduser -S ringracers -G ringracers
RUN mkdir /buildfiles && chown ringracers:ringracers /buildfiles
USER ringracers
# Clone the repo
WORKDIR /buildfiles/
RUN git clone https://github.com/KartKrewDev/RingRacers.git
# Build the code
WORKDIR /buildfiles/RingRacers
COPY --chown=ringracers:ringracers build.sh .
RUN chmod +x build.sh
RUN ./build.sh
# After building
WORKDIR /home/ringracers
COPY --chown=ringracers:ringracers run_server.sh .
RUN chmod +x run_server.sh
COPY --chown=ringracers:ringracers ringserv-template.cfg ./server
# Set up environment variables
ENV RINGRACERSWADDIR=/data/ringracers-data
ENV RR_VERSION=${RR_VERSION}
ENTRYPOINT [ "./run_server.sh" ]