updates
This commit is contained in:
@@ -2,7 +2,9 @@ FROM fithwum/base-image:debian-bookworm
|
||||
LABEL maintainer "fithwum"
|
||||
|
||||
# Environment Variables
|
||||
ENV VS_CHANNEL="stable"
|
||||
ENV VS_VERSION=""
|
||||
ENV USERNAME="vintagestory"
|
||||
|
||||
# URL's for files
|
||||
ARG INSTALL_SCRIPT=https://gitlab.fithwum.tech/fithwum/vintage-story/-/raw/master/vanilla/install_script.sh
|
||||
@@ -12,7 +14,7 @@ RUN apt-get -y update && apt-get autoclean && apt-get autoremove \
|
||||
&& wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \
|
||||
&& dpkg -i packages-microsoft-prod.deb \
|
||||
&& rm packages-microsoft-prod.deb \
|
||||
&& apt-get -y update && apt-get install dotnet-sdk-9.0 bzip2 jq wget pcregrep screen -y \
|
||||
&& apt-get -y update && apt-get install dotnet-sdk-7.0 bzip2 jq wget pcregrep screen -y \
|
||||
&& useradd vintagestory -s /sbin/nologin -m \
|
||||
&& apt-get -y --fix-broken install \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
|
||||
@@ -2,49 +2,66 @@
|
||||
# Copyright (c) 2022 fithwum
|
||||
# All rights reserved
|
||||
|
||||
VS_SERVER_FILE=https://cdn.vintagestory.at/gamefiles/stable/vs_server_linux-x64_$VS_VERSION.tar.gz
|
||||
CUR_V="$(find /VSserver/server -name server-* | cut -d '-' -f2-)"
|
||||
if [ ! -z "${VS_VERSION}" ] && [ "${CUR_V}" != "${VS_VERSION}" ]; then
|
||||
echo "---Static version: ${VS_VERSION} set!---"
|
||||
DL_URL="$(wget -qO- http://api.vintagestory.at/${VS_CHANNEL}.json | jq -r --arg version "${VS_VERSION}" '.[$version].linuxserver.urls.cdn')"
|
||||
LAT_V="${VS_VERSION}"
|
||||
elif [ ! -z "${VS_VERSION}" ] && [ ! -z "${CUR_V}" ] && [ "${CUR_V}" == "${VS_VERSION}" ]; then
|
||||
echo "---Static version: ${VS_VERSION} locally found!---"
|
||||
LAT_V="${CUR_V}"
|
||||
DL_URL="local"
|
||||
else
|
||||
JSON="$(wget -qO- http://api.vintagestory.at/${VS_CHANNEL}.json)"
|
||||
LAT_V="$(echo "${JSON}" | jq -r 'keys_unsorted[]' | head -1)"
|
||||
DL_URL="$(echo "${JSON}" | jq -r --arg version "${LAT_V}" '.[$version].linuxserver.urls.cdn')"
|
||||
fi
|
||||
|
||||
VS_SERVER_FILE=https://cdn.vintagestory.at/gamefiles/stable/vs_server_linux-x64_$CUR_V.tar.gz
|
||||
|
||||
# Main install (Debian).
|
||||
# Check for server files and download if needed.
|
||||
if [ -e /VSserver/server-$VS_VERSION.sh ]
|
||||
if [ -e /VSserver/server-$CUR_V.sh ]
|
||||
then
|
||||
echo " "
|
||||
echo "INFO ! server-$VS_VERSION.sh found starting now."
|
||||
echo "INFO ! server-$CUR_V.sh found starting now."
|
||||
else
|
||||
echo " "
|
||||
echo "WARNING ! server-$VS_VERSION.sh is out of date/missing ... will download now."
|
||||
echo "WARNING ! server-$CUR_V.sh is out of date/missing ... will download now."
|
||||
echo " "
|
||||
echo "INFO ! Cleaning old files."
|
||||
mkdir /VSserver/old-server-versions/
|
||||
mv /VSserver/server/. /VSserver/old-server-versions/server/
|
||||
mv /VSserver/server-*.sh /VSserver/old-server-versions/
|
||||
wget --no-cache --show-progress --progress=bar:force:noscroll $VS_SERVER_FILE -O /VStemp/vs_server_linux-x64_$MC_VERSION.tar.gz
|
||||
tar -xzf /VStemp/vs_server_linux-x64_$MC_VERSION.tar.gz -C /VStemp/files
|
||||
wget --no-cache --show-progress --progress=bar:force:noscroll $VS_SERVER_FILE -O /VStemp/vs_server_linux-x64_$CUR_V.tar.gz
|
||||
tar -xzf /VStemp/vs_server_linux-x64_$CUR_V.tar.gz -C /VStemp/files
|
||||
rm -fr /VStemp/vs_server_linux-x64_*.*.*.tar.gz
|
||||
cp -uR /VStemp/files/. /VSserver/server/
|
||||
rm -fr /VStemp/files/
|
||||
mv /VSserver/server/server.sh /VSserver/server/server-$VS_VERSION.sh
|
||||
mv /VSserver/server/server.sh /VSserver/server/server-$CUR_V.sh
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
echo "INFO ! Setting server path."
|
||||
sed -i '/VSPATH='*'/c\VSPATH='/VSserver/server'' /VSserver/server/server-$VS_VERSION.sh
|
||||
sed -i '/VSPATH='*'/c\VSPATH='/VSserver/server'' /VSserver/server/server-$CUR_V.sh
|
||||
echo "INFO ! Setting data path."
|
||||
sed -i '/DATAPATH='*'/c\DATAPATH='/VSserver/data'' /VSserver/server/server-$VS_VERSION.sh
|
||||
sed -i '/DATAPATH='*'/c\DATAPATH='/VSserver/data'' /VSserver/server/server-$CUR_V.sh
|
||||
echo "INFO ! Setting username."
|
||||
sed -i '/USERNAME='*'/c\USERNAME='$USERNAME'' /VSserver/server/server-$CUR_V.sh
|
||||
|
||||
sleep 1
|
||||
|
||||
# Set permissions.
|
||||
chown 99:100 -R /VSserver
|
||||
chmod 777 -R /VSserver
|
||||
chmod +x /VSserver/server/server-$VS_VERSION.sh
|
||||
chmod +x /VSserver/server/server-$CUR_V.sh
|
||||
|
||||
sleep 1
|
||||
|
||||
# Run vintage-story server.
|
||||
echo " "
|
||||
echo "INFO ! Starting vintage-story Server $VS_VERSION"
|
||||
exec /VSserver/server/server-$VS_VERSION.sh
|
||||
echo "INFO ! Starting vintage-story Server $CUR_V"
|
||||
exec /VSserver/server/server-$CUR_V.sh
|
||||
|
||||
exit
|
||||
Reference in New Issue
Block a user