From e2c5563f681c2988aa7d27c4dca73bae94839d1a Mon Sep 17 00:00:00 2001 From: Lucas Briese Date: Tue, 25 Sep 2018 12:25:21 +0200 Subject: [PATCH] ~ try with lgsm --- Dockerfile | 38 ++++++++++++++++++++++++++++++-------- entrypoint.sh | 26 ++++---------------------- 2 files changed, 34 insertions(+), 30 deletions(-) diff --git a/Dockerfile b/Dockerfile index fa412ca..f1185f5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,24 +8,46 @@ ENV STEAM_PATH="/home/steam" \ USER_ID=10000 \ DOCKER_USER=steam \ \ - DEBIAN_FRONTEND="noninteractive" + WORKSHOP_COLLECTION_ID= \ + INSTALL_CSS=false \ + INSTALL_HL2=false \ + INSTALL_HLDM=false \ + INSTALL_TF2=false \ + \ + CSS_PATH="/home/steam/addons/css" \ + HL2_PATH="/home/steam/addons/hl2" \ + HLDM_PATH="/home/steam/addons/hldm" \ + TF2_PATH="/home/steam/addons/tf2" \ + \ + USE_MY_REPLACER_CONFIG=false ENTRYPOINT ["./home/entrypoint.sh"] -CMD ["-game", "garrysmod", "+gamemode", "sandbox", "+map", "gm_flatgrass"] COPY ["entrypoint.sh", "/home/"] -# removed dep. lib32gcc1 libtcmalloc-minimal4:i386 gdb libreadline5 +# removed dep. lib32gcc1 libtcmalloc-minimal4:i386 gdb RUN dpkg --add-architecture i386 && \ apt-get update -y && \ - apt-get install -y mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 libstdc++6:i386 lib32tinfo5 && \ - locales \ + apt-get install -y mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 libstdc++6:i386 lib32tinfo5 \ + locales && \ \ + groupadd -g $GROUP_ID $DOCKER_USER && \ + useradd -d /home/steam/ -g $GROUP_ID -u $USER_ID -m $DOCKER_USER && \ + chown "$DOCKER_USER:$DOCKER_USER" /home/entrypoint.sh && \ + mkdir -p "$SERVER_PATH" && \ + chown -R "$DOCKER_USER:$DOCKER_USER" "$STEAM_PATH" && \ chmod a=rx /home/entrypoint.sh && \ + chmod a=rx /home/installAndMountAddons.sh && \ + chmod a=rx /home/forceWorkshopDownload.sh && \ + chmod a=rx /home/experimental.sh && \ + ulimit -n 2048 && \ \ locale-gen en_US.UTF-8 && \ - wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh gmodserver + \ + su -u "$DOCKER_USER" wget -O linuxgsm.sh https://linuxgsm.sh && \ + su -u "$DOCKER_USER" chmod +x linuxgsm.sh && \ + su -u "$DOCKER_USER" bash linuxgsm.sh gmodserver -USER "root:root" +USER "$USER_ID:$GROUP_ID" -VOLUME "$SERVER_PATH" \ No newline at end of file +VOLUME "$SERVER_PATH" diff --git a/entrypoint.sh b/entrypoint.sh index b0a447f..6060ed8 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -3,29 +3,11 @@ echo "starting entrypoint.sh" set -e -echo "installing / updating steamcmd in $STEAM_PATH" -cd "$STEAM_PATH" -wget -q -O - "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar -zxvf - -echo "testing steamcmd" -./steamcmd.sh -noasync +login anonymous +quit +parms= -echo "installing / validating ttt" -cd "$STEAM_PATH" -./steamcmd.sh -noasync +login anonymous +force_install_dir "$STEAM_PATH/server/" +app_update 4020 validate +quit +./gmodserver install -# fix steamcmd error -ln -s "${STEAM_PATH}/linux32/steamclient.so" ~/.steam/sdk32/steamclient.so - -# todo catch => send killserver / quit -cd "$STEAM_PATH/server/" -trap 'pkill -15 srcds_run' SIGTERM - -echo "starting with" -for var in "$@" -do - echo "$var" -done - -./srcds_run "$@" & +trap './home/steam/gmodserver stop' SIGTERM +./gmodserver debug wait "$!"