Ich habe eine Möglichkeit gefunden, mit der man sich selbst updatende Images schreiben kann. Tekbase prüft offenbar images auf eine install.sh die bei der Installation ausgeführt wird.
Auf diese weise kann man aber auch direkt das komplette Image generieren, wodurch diese automatisch die neuste Version hat. Ich poste hier mal ein Beispiel. Ich wäre dafür, dass andere die jetzt eventuell auch Lust haben solche Images zu schreiben ihre Images hier posten, damit alle etwas davon haben.
Also hier mein Beispiel. Ein Image für ARK:
Das Image:
(Also die install.sh die natürlich noch vorher in die ark.tar gepackt werden muss)
#!/bin/bash
DIR=`pwd`
User=`stat -c '%U' $DIR`
mkdir ./steamcmd
chown -R $User:users ./steamcmd
cd ./steamcmd
su $User -c "wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz"
su $User -c "tar -xvzf steamcmd_linux.tar.gz"
su $User -c "./steamcmd.sh +login anonymous +force_install_dir ../ +app_update 376030 +quit"
cd ..
rm -r ./steamcmd
cd ./ShooterGame/Binaries/Linux
su $User -c "wget EIGENEN_IMAGE_SERVER_EINFÜGEN/start/ark.sh -O start.sh; chmod u+xr start.sh"
cd ..
cd ..
cd ./Content/
mkdir Map
chown -R $User:users ./Map
cd ./Map/
su $User -c "touch ScorchedEarth_P.lol"
su $User -c "touch TheCenter.lol"
su $User -c "touch TheIsland.lol"
Alles anzeigen
Die ark.sh (start.sh) die auf dem Imageserver im verzeichnis /server/ gespeichert weden muss:
#!/bin/bash
while test $# -gt 0; do
case "$1" in
"-MAP")
MAP="$2"
shift;;
"-PORT")
PORT="$2"
shift ;;
"-PLAYER")
PLAYER="$2"
shift ;;
esac
shift
done
APORT=$(($PORT+1))
./ShooterGameServer "$MAP"?listen?Port="$APORT"?QueryPort="$PORT"?MaxPlayers="$PLAYER" -server -log -USEALLAVAILABLECORES
Alles anzeigen
Konfiguration für Tekbase:
Spiel: Ark Survival Evolved
Standard Map: TheIsland
Kürzel: ark
Map-Aufwahl: JA
Startscript Ordner: /ShooterGame/Binaries/Linux
Startscript: ./start.sh -MAP gsmap -PORT gsport -PLAYER gsplayer
Qstat-Kürzel: a2s
Udatescript:
wget HIER_IMAGESERVER_EINFÜGEN/updater/steamupdate.sh ;chmod+x ./steamupdate.sh;./updater.sh anonymous 376030;rm ./steamupdate.sh
Updatescript:
#!/bin/bash
rm -r steamapps/
mkdir ./steamcmd
cd ./steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh +login $1 +force_install_dir ../ +app_update $2 +quit
cd ..
rm -r ./steamcmd
Alles anzeigen
Spielmap Einstellungen:
Spiel: ARK
Datei Endung: lol
Pfad: /ShooterGame/Content/Map
Unterverzeichnisse durchsuchen: Nein
Datei Status: Map Datei
Btw. Vielleicht kann man das Thema hier anpinnen