FROM alpine:3.15.0 AS base # Build arguments ARG RELEASE_TAG WORKDIR /terraria RUN apk update && apk add --no-cache unzip curl && \ curl -s "https://api.github.com/repos/Pryaxis/TShock/releases/tags/${RELEASE_TAG}" | \ grep "browser_download_url" | \ grep -o "https[^\"]\+" | \ xargs curl -sLo tshock.zip && \ unzip -d tshock tshock.zip && \ rm tshock.zip FROM mono:6.12.0.107 WORKDIR /terraria COPY --from=base /terraria/tshock /terraria # Create worlds directory & symlink it RUN mkdir -p worlds logs config /root/.local/share/Terraria && \ ln -s /terraria/worlds /root/.local/share/Terraria/Worlds ENTRYPOINT \ mono /terraria/TerrariaServer.exe \ -configpath /terraria/config \ -logpath /terraria/logs \ -autocreate "$AUTOCREATE" \ -world /terraria/worlds/Main.wld