Skip to content

Commit

Permalink
Merge pull request #16 from fryfrog/add_user
Browse files Browse the repository at this point in the history
Add PUID and PGID to palworld docker image.
  • Loading branch information
thijsvanloef authored Jan 21, 2024
2 parents 941d105 + 49bf6ed commit dd87782
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 13 deletions.
4 changes: 3 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*

ENV PORT=8211 \
PUID=1000 \
PGID=1000 \
PLAYERS=16 \
MULTITHREADING=false \
COMMUNITY=false \
Expand All @@ -23,4 +25,4 @@ RUN chmod +x /home/steam/server/init.sh /home/steam/server/start.sh
WORKDIR /home/steam/server

EXPOSE ${PORT}
ENTRYPOINT ["/home/steam/server/init.sh"]
ENTRYPOINT ["/home/steam/server/init.sh"]
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ services:
- 27015:27015/udp
environment:
- PORT=8211
- PUID=1000
- PGID=1000
- PLAYERS=16
- MULTITHREADING=FALSE
- COMMUNITY=false # Enable this if you want your server to show up in the community servers tab, USE WITH SERVER_PASSWORD!
Expand All @@ -55,6 +57,8 @@ docker run -d \
-v ./<palworld-folder>:/palworld/ \
-e PLAYERS=16 \
-e PORT=8211 \
-e PUID=1000 \
-e PGID=1000 \
-e COMMUNITY=false \
--restart unless-stopped \
thijsvanloef/palworld-server-docker
Expand All @@ -74,6 +78,8 @@ It is highly recommended you set the following environment values before startin
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | -------------- |
| PLAYERS* | Max amount of players that are able to join the server | 16 | 1-31 |
| PORT* | UDP port that the server will expose | 8211 | 1024-65535 |
| PUID* | The uid of the user the server should run as | 1000 | !0 |
| PGID* | The gid of the group the server should run as | 1000 | !0 |
| MULTITHREADING** | Improves performance in multi-threaded CPU environments. It is effective up to a maximum of about 4 threads, and allocating more than this number of threads does not make much sense. | false | true/false |
| COMMUNITY | Whether or not the server shows up in the community server browser (USE WITH SERVER_PASSWORD) | false | true/false |
| PUBLIC_IP | You can manually specify the global IP address of the network on which the server running.If not specified, it will be detected automatically. If it does not work well, try manual configuration. | | x.x.x.x |
Expand Down Expand Up @@ -101,4 +107,4 @@ Issues/Feature requests can be submitted by using [this link](https://github.com

### Known Issues

Known issues are listed in the [wiki](https://github.com/thijsvanloef/palworld-server-docker/wiki/Known-Issues)
Known issues are listed in the [wiki](https://github.com/thijsvanloef/palworld-server-docker/wiki/Known-Issues)
4 changes: 3 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ services:
- 27015:27015/udp
environment:
- PORT=8211
- PUID=1000
- PGID=1000
- PLAYERS=16
- MULTITHREADING=false
- UPDATE_ON_BOOT=true
Expand All @@ -17,4 +19,4 @@ services:
# - SERVER_NAME="World of Pals"
# - ADMIN_PASSWORD="someAdminPassword"
volumes:
- ./palworld:/palworld/
- ./palworld:/palworld/
18 changes: 12 additions & 6 deletions scripts/init.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,20 @@
#!/bin/sh
#!/bin/bash

mkdir -p /palworld
if [[ ! "${PUID}" -eq 0 ]] && [[ ! "${PGID}" -eq 0 ]]; then
echo "Executing usermod..."
usermod -o -u "${PUID}" steam
groupmod -o -g "${PGID}" steam
else
echo "Running as root is not supported, please fix your PUID and PGID!"
exit 1
fi

mkdir -p /palworld
chown -R steam:steam /palworld

if [ "${UPDATE_ON_BOOT}" = true ]; then

printf "\e[0;32m*****STARTING INSTALL/UPDATE*****\e[0m"
/home/steam/steamcmd/steamcmd.sh +force_install_dir "/palworld" +login anonymous +app_update 2394010 validate +quit

su steam -c '/home/steam/steamcmd/steamcmd.sh +force_install_dir "/palworld" +login anonymous +app_update 2394010 validate +quit'
fi

./start.sh
./start.sh
6 changes: 2 additions & 4 deletions scripts/start.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
#!/bin/sh

#!/bin/bash

STARTCOMMAND="./PalServer.sh -port=${PORT} -players=${PLAYERS}"


if [ "${COMMUNITY}" = true ]; then
STARTCOMMAND="${STARTCOMMAND} EpicApp=PalServer"
fi
Expand All @@ -30,7 +28,7 @@ fi

if [ "${MULTITHREADING}" = true ]; then
STARTCOMMAND="${STARTCOMMAND} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS"
fi
fi

cd /palworld || exit

Expand Down

0 comments on commit dd87782

Please sign in to comment.