mbround18 / palworld-docker

🌟 Welcome to the ultimate Palworld Server Setup! 🌍 This GitHub repository is your go-to toolkit πŸ› οΈ for launching a Palworld server in a snap using Docker! Choose from preset worlds like 'casual' πŸ–οΈ, 'normal' πŸŒ†, or 'hard' πŸŒ‹, or dive deep into customization with flexible settings πŸŽ›οΈ.
https://dev.to/mbround18/dockerize-your-palworld-server-a-step-by-step-guide-1d02
BSD 3-Clause "New" or "Revised" License
24 stars 4 forks source link

Palworld Server

🌟 Welcome to the ultimate Palworld Server Setup! 🌍 This GitHub repository is your go-to toolkit πŸ› οΈ for launching a Palworld server in a snap using Docker! Choose from preset worlds like 'casual' πŸ–οΈ, 'normal' πŸŒ†, or 'hard' πŸŒ‹, or dive deep into customization with flexible settings πŸŽ›οΈ.

!!Notice!! Bug with saves, developers of Palworld working hard to fix!

With the recent bug on save corruption, we highly recommend you backup your save files! Click here to see how to integrate auto backups.

Prerequisites

Configuration Options

The server can be configured either through environment variables or by passing arguments directly to the Docker container. The available presets are: They were configured based on this article

Additionally, you can customize the following settings:

To see a full list of supported configuration options, see the Environment Configuration Options page.

Using Docker Compose

To run the server with Docker Compose, you first need to create a docker-compose.yml file in the root of this repository with the following content:

version: "3.8"
services:
  palworld:
    image: mbround18/palworld-docker:latest
    environment:
      PRESET: "casual" # Options: casual, normal, hard
      MULTITHREADING: true # Optional, Allows for multithreading the server. 
      # Optionally override specific settings:
      # DAY_TIME_SPEED_RATE: '1'
      # NIGHT_TIME_SPEED_RATE: '1'
      # And so on...
    ports:
      - "8211:8211" # Default game port
      - "27015:27015" # steam query port
    volumes:
      - "./data:/home/steam/palworld"

Running the Server

To start the server with your chosen configuration, run:

docker-compose up

This command builds the Docker image if necessary and starts the server. The PRESET environment variable determines the server's configuration preset. You can also override any specific setting by adding it to the environment section of the docker-compose.yml file.

Custom Configuration

If you wish to customize the server beyond the provided presets, simply add or modify the environment variables in the docker-compose.yml file. For example, to set a custom experience rate, you would add:

environment:
  EXP_RATE: "1.5"

Updating Server Settings

To update the server settings after initial setup, modify the docker-compose.yml file as needed and restart the server:

docker-compose down
docker-compose up

This process ensures that your server configuration is always up to date with your specifications.

Contributions

Contributions to this project are welcome! Please submit a pull request or open an issue for any bugs, features, or improvements.