Tip
Do you want to chat with the community?
Join us on Discord
This Docker image includes a Palworld Dedicated Server based on Linux and Docker.
BaseCampWorkerMaxNum
setting, why didn't this update the server?If you need support for this Docker image:
Please avoid:
To run this Docker image, you need a basic understanding of Docker, Docker-Compose, Linux, and Networking (Port-Forwarding/NAT).
Resource | 1-8 players | 8-12+ players |
---|---|---|
CPU | 4 CPU-Cores @ High GHz | 6-8 CPU Cores @ High GHz |
RAM | 8GB RAM Base + 2GB per player | 12GB RAM Base + 2GB per player |
Storage | 30GB | 30GB+ |
You can find the changelog here
This 2 persons helped a lot along to way and made me and this project better! So if you do not like my version of the Docker image or looking for other features, feel free to check out the following 2 images:
game
sub-directory on your Docker-Node in your game-server-directory
/srv/palworld
, /opt/palworld
or /home/username/palworld
)docker pull jammsen/palworld-dedicated-server:latest
docker-compose.yml
and default.env
to your liking
docker-compose up -d && docker-compose logs -f
See this file for the documentation
See example docker-compose.yml.
Note
Please research the RCON-Commands on the official source: https://tech.palworldgame.com/settings-and-operation/commands
You can use docker exec palworld-dedicated-server rconcli <command>
right on your terminal/shell.
$ docker exec palworld-dedicated-server rconcli showplayers
name,playeruid,steamid
$ docker exec palworld-dedicated-server rconcli info
Welcome to Pal Server[v0.1.4.1] jammsen-docker-generated-20384
$ docker exec palworld-dedicated-server rconcli save
Complete Save
Warning
If RCON is disabled, the backup manager won't do saves via RCON before creating a backup and will report warnings. This means that the backup will be created from the last auto-save of the server. This can lead to data-loss and/or savegame corruption.
Recommendation: Please make sure that RCON is enabled before using the backup manager.
Warning
Please use in the following part always the -user steam
option or your files will written as root
Usage: docker exec -user steam palworld-dedicated-server backup [command] [arguments]
Command | Argument | Required/Optional | Default Value | Values | Description |
---|---|---|---|---|---|
create | N/A | N/A | N/A | N/A | Creates a backup. |
list | <number_to_list> |
Optional | N/A | Positive numbers | Lists all backups. If <number_to_list> is specified, only the mostrecent <number_to_list> backups are listed. |
clean | <number_to_keep> |
Optional | BACKUP_RETENTION_AMOUNT_TO_KEEP |
Positive numbers | Cleans up backups. If <number_to_list> is specified, cleans and keepsthe most recent <number_to_keep> backups.If not, default to BACKUP_RETENTION_AMOUNT_TO_KEEP var |
Examples:
$ docker exec -user steam palworld-dedicated-server backup
> Backup 'saved-20240203_032855.tar.gz' created successfully.
$ docker exec -user steam palworld-dedicated-server backup list
> Listing 2 backup file(s)!
2024-02-03 03:28:55 | saved-20240203_032855.tar.gz
2024-02-03 03:28:00 | saved-20240203_032800.tar.gz
$ docker exec -user steam palworld-dedicated-server backup_clean 3
> 1 backup(s) cleaned, keeping 2 backups(s).
$ docker exec -user steam palworld-dedicated-server backup_list
> Listing 1 out of backup 2 file(s).
2024-02-03 03:30:00 | saved-20240203_033000.tar.gz
To enable webhook integrations, you need to set the following environment variables in the default.env
:
WEBHOOK_ENABLED=true
WEBHOOK_URL="https://your.webhook.url"
After enabling the server should send messages in a Discord-Compatible way to your webhook url.
You can find more details about these variables here.
A Helm chart to deploy this container can be found at palworld-helm.
Yes just change the value from
ALLOW_CONNECT_PLATFORM
from Steam to Xbox. See here for more documentation: https://tech.palworldgame.com/getting-started/for-xbox-dedicated-server
You can run this `docker exec -ti palworld-dedicated-server bash' or you could navigate to the "Stacks" tab in Portainer, select your stack, and click on the container name. Then click on the "Exec console" button.
You can run this
docker exec -ti palworld-dedicated-server cat /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
and it will show you the config inside the container.
Errors like
[S_API FAIL] Tried to access Steam interface SteamUser021 before SteamAPI_Init succeeded.
are safe to ignore.
You can try to insert in your docker-compose file this parameter
platform: linux/amd64
at the palworld service. This isn't a special fix for Apple silicon, but to run on other than x86 hosts. The support for arm exists only by enforcing x86 emulation, if that isn't to host already. Rosetta is doing the translation/emulation.
BaseCampWorkerMaxNum
setting, why didn't this update the server?This is a confirmed bug. Changing
BaseCampWorkerMaxNum
in thePalWorldSettings.ini
has no effect on the server. There are tools out there to help with this, like this one: https://github.com/legoduded/palworld-worldoptions
Warning
Adding WorldOption.sav
will break PalWorldSetting.ini
. So any new changes to the settings (either on the file or via ENV VARS), you will have to create a new WorldOption.sav
and update it every time for those changes to have an effect.
Issues
there is a Feature Request issue-type.