Skip to content

Commit

Permalink
Merge branch 'main' into exit-on-compile-settings-failure
Browse files Browse the repository at this point in the history
  • Loading branch information
thijsvanloef authored Feb 14, 2024
2 parents b2f044f + e04b34e commit 20a7caa
Show file tree
Hide file tree
Showing 36 changed files with 1,276 additions and 58 deletions.
42 changes: 11 additions & 31 deletions .github/workflows/unit-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ on: # yamllint disable-line rule:truthy
pull_request:
workflow_call:

concurrency:
group: '${{ github.workflow }} @ ${{ github.ref }}'
cancel-in-progress: true

jobs:
unit-test-amd64:
name: Docker - Test (amd64)
Expand All @@ -30,19 +34,7 @@ jobs:
-p 27015:27015/udp \
-p 25575:25575/tcp \
-v ./palworld:/palworld/ \
-e PUID=1000 \
-e PGID=1000 \
-e PORT=8211 \
-e PLAYERS=16 \
-e MULTITHREADING=true \
-e RCON_ENABLED=true \
-e RCON_PORT=25575 \
-e TZ=UTC \
-e ADMIN_PASSWORD="adminPasswordHere" \
-e SERVER_PASSWORD="worldofpals" \
-e COMMUNITY=false \
-e SERVER_NAME="World of Pals" \
-e SERVER_DESCRIPTION="palworld-server-docker by Thijs van Loef" \
--env-file .env.example \
--restart unless-stopped \
--stop-timeout 30 \
${{ github.run_id }}
Expand Down Expand Up @@ -79,7 +71,7 @@ jobs:
nc -z -u -v 127.0.0.1 27015 || exit 1
nc -z -v 127.0.0.1 25575 || exit 1
- name: Test the backup command functions
- name: Test the backup script
run: |
docker exec palworld-server backup
if [ ! -f ./palworld/backups/palworld-save-*.tar.gz ]; then
Expand Down Expand Up @@ -117,7 +109,7 @@ jobs:
with:
file: ./Dockerfile
load: true
tags: ${{ github.run_id }}
tags: ${{ github.run_id }}:arm64
platforms: linux/arm64

- name: Run server
Expand All @@ -129,26 +121,14 @@ jobs:
-p 27015:27015/udp \
-p 25575:25575/tcp \
-v ./palworld:/palworld/ \
-e PUID=1000 \
-e PGID=1000 \
-e PORT=8211 \
-e PLAYERS=16 \
-e MULTITHREADING=true \
-e RCON_ENABLED=true \
-e RCON_PORT=25575 \
-e TZ=UTC \
-e ADMIN_PASSWORD="adminPasswordHere" \
-e SERVER_PASSWORD="worldofpals" \
-e COMMUNITY=false \
-e SERVER_NAME="World of Pals" \
-e SERVER_DESCRIPTION="palworld-server-docker by Thijs van Loef" \
--env-file .env.example \
--restart unless-stopped \
--stop-timeout 30 \
${{ github.run_id }}
${{ github.run_id }}:arm64
- name: Wait for server to start
run: |
TIMEOUT_SECONDS=400
TIMEOUT_SECONDS=600
START_TIME=$(date +%s)
while ! docker logs palworld-server 2>&1 | grep -q "Setting breakpad minidump AppID"; do
Expand Down Expand Up @@ -178,7 +158,7 @@ jobs:
nc -z -u -v 127.0.0.1 27015 || exit 1
nc -z -v 127.0.0.1 25575 || exit 1
- name: Test the backup command functions
- name: Test the backup script
run: |
docker exec palworld-server backup
if [ ! -f ./palworld/backups/palworld-save-*.tar.gz ]; then
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,10 @@ Massive shoutout to the following sponsors!
<!-- sponsors --><a href="https://github.com/ShoeBoom"><img src="https://github.com/ShoeBoom.png" width="50px" alt="ShoeBoom" /></a>&nbsp;&nbsp;<a href="https://github.com/doomhound188"><img src="https://github.com/doomhound188.png" width="50px" alt="doomhound188" /></a>&nbsp;&nbsp;<a href="https://github.com/AshishT112203"><img src="https://github.com/AshishT112203.png" width="50px" alt="AshishT112203" /></a>&nbsp;&nbsp;<a href="https://github.com/pabumake"><img src="https://github.com/pabumake.png" width="50px" alt="pabumake" /></a>&nbsp;&nbsp;<a href="https://github.com/stoprx"><img src="https://github.com/stoprx.png" width="50px" alt="stoprx" /></a>&nbsp;&nbsp;<a href="https://github.com/KiKoS0"><img src="https://github.com/KiKoS0.png" width="50px" alt="KiKoS0" /></a>&nbsp;&nbsp;<a href="https://github.com/inspired-by-nudes"><img src="https://github.com/inspired-by-nudes.png" width="50px" alt="inspired-by-nudes" /></a>&nbsp;&nbsp;<a href="https://github.com/USA-RedDragon"><img src="https://github.com/USA-RedDragon.png" width="50px" alt="USA-RedDragon" /></a>&nbsp;&nbsp;<a href="https://github.com/PulsarFTW"><img src="https://github.com/PulsarFTW.png" width="50px" alt="PulsarFTW" /></a>&nbsp;&nbsp;<!-- sponsors -->
</p>

## Official Documentation

[![Documentation](https://github.com/thijsvanloef/palworld-server-docker/assets/58031337/b92d76d1-5efb-438d-9ffd-5385544a831b)](https://palworld-server-docker.loef.dev/)

## Server Requirements

| Resource | Minimum | Recommended |
Expand Down
4 changes: 4 additions & 0 deletions docs/kr/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@
<!-- sponsors --><a href="https://github.com/ShoeBoom"><img src="https://github.com/ShoeBoom.png" width="50px" alt="ShoeBoom" /></a>&nbsp;&nbsp;<a href="https://github.com/doomhound188"><img src="https://github.com/doomhound188.png" width="50px" alt="doomhound188" /></a>&nbsp;&nbsp;<a href="https://github.com/AshishT112203"><img src="https://github.com/AshishT112203.png" width="50px" alt="AshishT112203" /></a>&nbsp;&nbsp;<a href="https://github.com/pabumake"><img src="https://github.com/pabumake.png" width="50px" alt="pabumake" /></a>&nbsp;&nbsp;<!-- sponsors -->
</p>

## Official Documentation

[![Documentation](https://github.com/thijsvanloef/palworld-server-docker/assets/58031337/b92d76d1-5efb-438d-9ffd-5385544a831b)](https://palworld-server-docker.loef.dev/ko/)

## 서버 요구 사양

| 리소스 | 최소 | 추천 |
Expand Down
4 changes: 4 additions & 0 deletions docs/zh-CN/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,10 @@
<!-- sponsors --><a href="https://github.com/ShoeBoom"><img src="https://github.com/ShoeBoom.png" width="50px" alt="ShoeBoom" /></a>&nbsp;&nbsp;<a href="https://github.com/doomhound188"><img src="https://github.com/doomhound188.png" width="50px" alt="doomhound188" /></a>&nbsp;&nbsp;<a href="https://github.com/AshishT112203"><img src="https://github.com/AshishT112203.png" width="50px" alt="AshishT112203" /></a>&nbsp;&nbsp;<a href="https://github.com/pabumake"><img src="https://github.com/pabumake.png" width="50px" alt="pabumake" /></a>&nbsp;&nbsp;<!-- sponsors -->
</p>

## Official Documentation

[![Documentation](https://github.com/thijsvanloef/palworld-server-docker/assets/58031337/b92d76d1-5efb-438d-9ffd-5385544a831b)](https://palworld-server-docker.loef.dev/zh/)

## 服务器配置需求

| 资源 | 最小 | 推荐 |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ sidebar_position: 2

# Game Settings

Changing Game Settings with Environment variables.

## With Environment Variables

:::warning
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 1

# Server Settings

This part will explain how to configure the server.
Changing Server Settings using environment variables.

## Environment variables

Expand Down
44 changes: 28 additions & 16 deletions docusaurus/docs/getting-started/quick-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ At the moment, Xbox Gamepass/Xbox Console players will not be able to join a ded
They will need to join players using the invite code and are limited to sessions of 4 players max.
:::

## Prerequisites

* Virtualization enabled in the BIOS/UEFI
* Must have [Docker](https://docs.docker.com/engine/install/) installed

## Server Requirements

| Resource | Minimum | Recommended |
Expand Down Expand Up @@ -55,9 +60,12 @@ services:
- ./palworld:/palworld/
```
<!-- markdownlint-disable-next-line -->
As an alternative, you can copy the [.env.example](https://github.com/thijsvanloef/palworld-server-docker/blob/main/.env.example) file to a new file called **.env** file.<!-- markdownlint-disable-next-line -->
Modify it to your needs, check out the [environment variables](https://palworld-server-docker.loef.dev/getting-started/configuration/server-settings#environment-variables) section to check the correct <!-- markdownlint-disable-next-line -->
values. Modify your [docker-compose.yml](https://github.com/thijsvanloef/palworld-server-docker/blob/main/docker-compose.yml) to this:
As an alternative, you can copy the [.env.example](https://github.com/thijsvanloef/palworld-server-docker/blob/main/.env.example) file to a new file called **.env** file.
<!-- markdownlint-disable-next-line -->
Modify it to your needs, check out the [environment variables](https://palworld-server-docker.loef.dev/getting-started/configuration/server-settings#environment-variables) section to check the correct
values.
<!-- markdownlint-disable-next-line -->
Modify your [docker-compose.yml](https://github.com/thijsvanloef/palworld-server-docker/blob/main/docker-compose.yml) to this:
```yml
services:
Expand All @@ -75,7 +83,18 @@ services:
- ./palworld:/palworld/
```
### Docker Run
### Starting the server
Use `docker compose up -d` in the same folder as the `docker-compose.yml` to start the server in the background

### Stopping the server

Use `docker compose stop` in the same folder as the `docker-compose.yml` to stop the server

Use `docker compose down --rmi all` in the same folder as the `docker-compose.yml`
to stop and remove the server and remove the docker image from your computer

## Docker Run

```bash
docker run -d \
Expand All @@ -101,9 +120,12 @@ docker run -d \
thijsvanloef/palworld-server-docker:latest # Use the latest-arm64 tag for arm64 hosts
```
<!-- markdownlint-disable-next-line -->
As an alternative, you can copy the [.env.example](https://github.com/thijsvanloef/palworld-server-docker/blob/main/.env.example) file to a new file called **.env** file.<!-- markdownlint-disable-next-line -->
As an alternative, you can copy the [.env.example](https://github.com/thijsvanloef/palworld-server-docker/blob/main/.env.example) file to a new file called **.env** file.
<!-- markdownlint-disable-next-line -->
Modify it to your needs, check out the [environment variables](https://palworld-server-docker.loef.dev/getting-started/configuration/server-settings#environment-variables) section to check the
correct values. Change your docker run command to this:
correct values.

Change your docker run command to this:

```bash
docker run -d \
Expand All @@ -116,13 +138,3 @@ docker run -d \
--stop-timeout 30 \
thijsvanloef/palworld-server-docker:latest # Use the latest-arm64 tag for arm64 hosts
```

## Starting the server

Use `docker compose up -d` to start the server in the background

## Stopping the server

Use `docker compose stop` to stop the server

Use `docker compose down --rmi all` to stop and remove the server and remove the docker image from your computer
13 changes: 9 additions & 4 deletions docusaurus/docs/guides/automatic-reboots.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@ sidebar_position: 4

## Configuring Automatic Reboots with Cron

To be able to use automatic reboots with this server `RCON_ENABLED` enabled.
To be able to use automatic reboots with this Server the following environment variables **have** to be set to `true`:

* `RCON_ENABLED`

:::warning

Expand All @@ -17,9 +19,12 @@ The example docker run command and docker compose file in [the Quicksetup](https
already use the needed policy
:::

Set `AUTO_REBOOT_ENABLED` to `true` or `false` to enable or disable automatic reboots (Default is disabled)

`AUTO_REBOOT_CRON_EXPRESSION` is a cron expression, in a Cron-Expression you define an interval for when to run jobs.
| Variable | Info | Default Values | Allowed Values |
|------------------------------------|------------------------------------------------------------------------|----------------|-------------------------------------------------------------------------------------------------------------------|
| AUTO_REBOOT_CRON_EXPRESSION | Setting affects frequency of automatic updates. | 0 0 \* \* \* | Needs a Cron-Expression - See [Configuring Automatic Backups with Cron](#configuring-automatic-reboots-with-cron) |
| AUTO_REBOOT_ENABLED | Enables automatic reboots | false | true/false |
| AUTO_REBOOT_WARN_MINUTES | How long to wait to reboot the server, after the player were informed. | 5 | !0 |
| AUTO_REBOOT_EVEN_IF_PLAYERS_ONLINE | Restart the Server even if there are players online. | false | true/false |

:::tip
This image uses Supercronic for crons
Expand Down
9 changes: 5 additions & 4 deletions docusaurus/docs/guides/automatic-updates.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,11 @@ The example docker run command and docker compose file in [the Quicksetup](https
already use the needed policy
:::

Set `AUTO_UPDATE_ENABLED` enable or disable automatic updates (Default is disabled)

`AUTO_UPDATE_CRON_EXPRESSION` is a cron expression, in a Cron-Expression you define an interval for when to run jobs.

| Variable | Info | Default Values | Allowed Values |
|-----------------------------|----------------------------------------------------------------------------------------------------------------------------|----------------|-------------------------------------------------------------------------------------------------------------------------------------------------|
| AUTO_UPDATE_CRON_EXPRESSION | Setting affects frequency of automatic updates. | 0 \* \* \* \* | Needs a Cron-Expression - See [Configuring Automatic Backups with Cron](https://palworld-server-docker.loef.dev/guides/backup/automated-backup) |
| AUTO_UPDATE_ENABLED | Enables automatic updates | false | true/false |
| AUTO_UPDATE_WARN_MINUTES | How long to wait to update the server, after the player were informed. (This will be ignored, if no Players are connected) | 30 | !0 |
:::tip
This image uses Supercronic for crons
see [supercronic](https://github.com/aptible/supercronic#crontab-format)
Expand Down
2 changes: 2 additions & 0 deletions docusaurus/docs/known-issues/known-issues.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ sidebar_position: 5

# Known Issues

Known issues of using this Docker image.

## Broadcast command can only send 1 word

When using Broadcast among RCON's functions, only one word is transmitted.
Expand Down
5 changes: 4 additions & 1 deletion docusaurus/docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ const config = {
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'en',
locales: ['en', 'ko', 'zh'],
locales: ['en', 'ko', 'zh', 'nl'],
localeConfigs:{
en: {
label: 'English',
Expand All @@ -42,6 +42,9 @@ const config = {
zh: {
label: 'Simplified Chinese',
},
nl: {
label: 'Dutch',
},
}
},

Expand Down
Loading

0 comments on commit 20a7caa

Please sign in to comment.