Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add PUID and PGID to palworld docker image. #16

Merged
merged 3 commits into from
Jan 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading