Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 1 addition & 54 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ USER root
WORKDIR /
RUN DEBIAN_FRONTEND=noninteractive \
apt-get update && \
apt-get install -y lib32gcc1
apt-get install -y libgcc1

ARG UID=999
ARG GID=999
Expand Down Expand Up @@ -51,56 +51,3 @@ RUN steamcmd \

WORKDIR $INSTALL_LOC
ENTRYPOINT ["rash", "/docker-entrypoint.rh"]

# Temporary container to download mod files with curl and unzip them
FROM debian:stretch-slim AS curl

RUN apt-get update && \
apt-get install -y unzip curl

ARG BEPINEX_VERSION=5.4.1801
ARG ENIGMATIC_THUNDER_VERSION=0.1.5
ARG R2API_VERSION=3.0.71

WORKDIR /tmp
RUN curl -L -o ./r2api.zip \
https://thunderstore.io/package/download/tristanmcpherson/R2API/${R2API_VERSION}/ && \
curl -L -o ./bepinexpack.zip \
https://thunderstore.io/package/download/bbepis/BepInExPack/${BEPINEX_VERSION}/ && \
curl -L -o ./enigmaticthunder.zip \
https://thunderstore.io/package/download/EnigmaDev/EnigmaticThunder/${ENIGMATIC_THUNDER_VERSION}/
RUN mkdir -p bepinexpack r2api engimaticthunder && \
unzip ./bepinexpack.zip -d bepinex && \
unzip ./r2api.zip -d r2api && \
unzip ./enigmaticthunder.zip -d enigmaticthunder

# Basic BepInEx installation, also sets up mods directory
FROM vanilla AS bepinex

ENV MODS_LOC="/plugins"
ENV MODS_CONFIG_LOC="/plugin_config"

USER root
RUN mkdir -p $MODS_LOC $MODS_CONFIG_LOC && \
chown -R ror2:ror2 $MODS_LOC $MODS_CONFIG_LOC

USER ror2
COPY --from=curl --chown=ror2 /tmp/bepinex/BepInExPack/BepInEx $INSTALL_LOC/BepInEx
COPY --from=curl --chown=ror2 /tmp/bepinex/BepInExPack/doorstop_config.ini $INSTALL_LOC
COPY --from=curl --chown=ror2 /tmp/bepinex/BepInExPack/winhttp.dll $INSTALL_LOC
RUN ln -s $MODS_LOC $INSTALL_LOC/BepInEx/plugins/rootmods
RUN ln -s $MODS_CONFIG_LOC $INSTALL_LOC/BepInEx/config

VOLUME $MODS_LOC
VOLUME $MODS_CONFIG_LOG

# R2API + BepInEx
FROM bepinex AS r2api

COPY --from=curl --chown=ror2 /tmp/r2api/plugins $INSTALL_LOC/BepInEx/plugins/
COPY --from=curl --chown=ror2 /tmp/r2api/monomod $INSTALL_LOC/BepInEx/monomod/

# EnigmaticThunder + BepInEx
FROM bepinex AS enigmaticthunder

COPY --from=curl --chown=ror2 /tmp/enigmaticthunder/plugins $INSTALL_LOC/BepInEx/plugins