mirror of
https://github.com/YuzuZensai/palworld-server-docker.git
synced 2026-01-31 14:57:59 +00:00
Merge pull request #167 from Dashboy1998/minimize-root-processes
Minimize Root Processes
This commit is contained in:
@@ -10,7 +10,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
|
|
||||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||||
RUN wget -q https://github.com/gorcon/rcon-cli/releases/download/v0.10.3/rcon-0.10.3-amd64_linux.tar.gz -O - | tar -xz && \
|
RUN wget -q https://github.com/gorcon/rcon-cli/releases/download/v0.10.3/rcon-0.10.3-amd64_linux.tar.gz -O - | tar -xz && \
|
||||||
mv rcon-0.10.3-amd64_linux/rcon /usr/bin/rcon-cli
|
mv rcon-0.10.3-amd64_linux/rcon /usr/bin/rcon-cli && \
|
||||||
|
rmdir /tmp/dumps
|
||||||
|
|
||||||
ENV PORT= \
|
ENV PORT= \
|
||||||
PUID=1000 \
|
PUID=1000 \
|
||||||
|
|||||||
@@ -9,4 +9,9 @@ FILE_PATH="/palworld/backups/palworld-save-${DATE}.tar.gz"
|
|||||||
cd /palworld/Pal/ || exit
|
cd /palworld/Pal/ || exit
|
||||||
|
|
||||||
tar -zcf "$FILE_PATH" "Saved/"
|
tar -zcf "$FILE_PATH" "Saved/"
|
||||||
|
|
||||||
|
if [ "$(id -u)" -eq 0 ]; then
|
||||||
|
chown steam:steam "$FILE_PATH"
|
||||||
|
fi
|
||||||
|
|
||||||
echo "backup created at $FILE_PATH"
|
echo "backup created at $FILE_PATH"
|
||||||
|
|||||||
@@ -10,12 +10,7 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p /palworld/backups
|
mkdir -p /palworld/backups
|
||||||
chown -R steam:steam /palworld
|
chown -R steam:steam /palworld /home/steam/
|
||||||
|
|
||||||
if [ "${UPDATE_ON_BOOT}" = true ]; then
|
|
||||||
printf "\e[0;32m*****STARTING INSTALL/UPDATE*****\e[0m\n"
|
|
||||||
su steam -c '/home/steam/steamcmd/steamcmd.sh +force_install_dir "/palworld" +login anonymous +app_update 2394010 validate +quit'
|
|
||||||
fi
|
|
||||||
|
|
||||||
term_handler() {
|
term_handler() {
|
||||||
if [ "${RCON_ENABLED}" = true ]; then
|
if [ "${RCON_ENABLED}" = true ]; then
|
||||||
@@ -29,6 +24,7 @@ term_handler() {
|
|||||||
|
|
||||||
trap 'term_handler' SIGTERM
|
trap 'term_handler' SIGTERM
|
||||||
|
|
||||||
./start.sh &
|
su steam -c ./start.sh &
|
||||||
|
# Process ID of su
|
||||||
killpid="$!"
|
killpid="$!"
|
||||||
wait $killpid
|
wait $killpid
|
||||||
|
|||||||
@@ -1,5 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ "${UPDATE_ON_BOOT}" = true ]; then
|
||||||
|
printf "\e[0;32m*****STARTING INSTALL/UPDATE*****\e[0m\n"
|
||||||
|
/home/steam/steamcmd/steamcmd.sh +force_install_dir "/palworld" +login anonymous +app_update 2394010 validate +quit
|
||||||
|
fi
|
||||||
|
|
||||||
STARTCOMMAND=("./PalServer.sh")
|
STARTCOMMAND=("./PalServer.sh")
|
||||||
|
|
||||||
if [ -n "${PORT}" ]; then
|
if [ -n "${PORT}" ]; then
|
||||||
@@ -56,7 +61,7 @@ if [ ! "$(grep -s '[^[:space:]]' /palworld/Pal/Saved/Config/LinuxServer/PalWorld
|
|||||||
printf "\e[0;32m*****GENERATING CONFIG*****\e[0m\n"
|
printf "\e[0;32m*****GENERATING CONFIG*****\e[0m\n"
|
||||||
|
|
||||||
# Server will generate all ini files after first run.
|
# Server will generate all ini files after first run.
|
||||||
su steam -c "timeout --preserve-status 15s ./PalServer.sh 1> /dev/null "
|
timeout --preserve-status 15s ./PalServer.sh 1> /dev/null
|
||||||
|
|
||||||
# Wait for shutdown
|
# Wait for shutdown
|
||||||
sleep 5
|
sleep 5
|
||||||
@@ -80,6 +85,6 @@ default:
|
|||||||
EOL
|
EOL
|
||||||
|
|
||||||
printf "\e[0;32m*****STARTING SERVER*****\e[0m\n"
|
printf "\e[0;32m*****STARTING SERVER*****\e[0m\n"
|
||||||
echo "bash -c '${STARTCOMMAND[*]}'"
|
echo "${STARTCOMMAND[*]}"
|
||||||
su steam -c "bash -c '${STARTCOMMAND[*]}'"
|
"${STARTCOMMAND[@]}"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user