forked from jammsen/docker-palworld-dedicated-server
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
130 lines (116 loc) · 4.76 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
FROM --platform=linux/amd64 cm2network/steamcmd:root
LABEL maintainer="Sebastian Schmidt - https://github.com/jammsen/docker-palworld-dedicated-server"
LABEL org.opencontainers.image.authors="Sebastian Schmidt"
LABEL org.opencontainers.image.source="https://github.com/jammsen/docker-palworld-dedicated-server"
RUN apt-get update \
&& apt-get install -y --no-install-recommends --no-install-suggests procps xdg-user-dirs \
&& apt-get clean \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Latest releases available at https://github.com/aptible/supercronic/releases
ENV SUPERCRONIC_URL=https://github.com/aptible/supercronic/releases/download/v0.2.29/supercronic-linux-amd64 \
SUPERCRONIC=supercronic-linux-amd64 \
SUPERCRONIC_SHA1SUM=cd48d45c4b10f3f0bfdd3a57d054cd05ac96812b
RUN curl -fsSLO "$SUPERCRONIC_URL" \
&& echo "${SUPERCRONIC_SHA1SUM} ${SUPERCRONIC}" | sha1sum -c - \
&& chmod +x "$SUPERCRONIC" \
&& mv "$SUPERCRONIC" "/usr/local/bin/${SUPERCRONIC}" \
&& ln -s "/usr/local/bin/${SUPERCRONIC}" /usr/local/bin/supercronic
# Latest releases available at https://github.com/gorcon/rcon-cli/releases
ENV RCON_URL=https://github.com/gorcon/rcon-cli/releases/download/v0.10.3/rcon-0.10.3-amd64_linux.tar.gz \
RCON_TGZ=rcon-0.10.3-amd64_linux.tar.gz \
RCON_TGZ_MD5SUM=8601c70dcab2f90cd842c127f700e398 \
RCON_BINARY=rcon
RUN curl -fsSLO "$RCON_URL" \
&& echo "${RCON_TGZ_MD5SUM} ${RCON_TGZ}" | md5sum -c - \
&& tar xfz rcon-0.10.3-amd64_linux.tar.gz \
&& chmod +x "rcon-0.10.3-amd64_linux/$RCON_BINARY" \
&& mv "rcon-0.10.3-amd64_linux/$RCON_BINARY" "/usr/local/bin/${RCON_BINARY}" \
&& ln -s "/usr/local/bin/${RCON_BINARY}" /usr/local/bin/rconcli \
&& rm -Rf rcon-0.10.3-amd64_linux rcon-0.10.3-amd64_linux.tar.gz
ADD --chown=steam:steam --chmod=755 servermanager.sh /servermanager.sh
ADD --chown=steam:steam --chmod=755 backupmanager.sh /backupmanager.sh
EXPOSE 8211/udp
EXPOSE 25575/tcp
RUN mkdir /palworld \
&& chown steam:steam /palworld
VOLUME [ "/palworld" ]
USER steam
ADD --chown=steam:steam --chmod=440 rcon.yaml ./rcon.yaml
ENV DEBIAN_FRONTEND=noninteractive \
PUID=0 \
PGID=0 \
# Container setttings
TZ="Europe/Berlin" \
ALWAYS_UPDATE_ON_START=true \
MULTITHREAD_ENABLED=true \
COMMUNITY_SERVER=true \
BACKUP_ENABLED=true \
BACKUP_CRON_EXPRESSION="0 * * * *" \
STEAMCMD_VALIDATE_FILES=true \
SERVER_SETTINGS_MODE=auto \
# Server-setting
NETSERVERMAXTICKRATE=120 \
DIFFICULTY=None \
DAYTIME_SPEEDRATE=1.000000 \
NIGHTTIME_SPEEDRATE=1.000000 \
EXP_RATE=1.000000 \
PAL_CAPTURE_RATE=1.000000 \
PAL_SPAWN_NUM_RATE=1.000000 \
PAL_DAMAGE_RATE_ATTACK=1.000000 \
PAL_DAMAGE_RATE_DEFENSE=1.000000 \
PLAYER_DAMAGE_RATE_ATTACK=1.000000 \
PLAYER_DAMAGE_RATE_DEFENSE=1.000000 \
PLAYER_STOMACH_DECREASE_RATE=1.000000 \
PLAYER_STAMINA_DECREACE_RATE=1.000000 \
PLAYER_AUTO_HP_REGENE_RATE=1.000000 \
PLAYER_AUTO_HP_REGENE_RATE_IN_SLEEP=1.000000 \
PAL_STOMACH_DECREACE_RATE=1.000000 \
PAL_STAMINA_DECREACE_RATE=1.000000 \
PAL_AUTO_HP_REGENE_RATE=1.000000 \
PAL_AUTO_HP_REGENE_RATE_IN_SLEEP=1.000000 \
BUILD_OBJECT_DAMAGE_RATE=1.000000 \
BUILD_OBJECT_DETERIORATION_DAMAGE_RATE=1.000000 \
COLLECTION_DROP_RATE=1.000000 \
COLLECTION_OBJECT_HP_RATE=1.000000 \
COLLECTION_OBJECT_RESPAWN_SPEED_RATE=1.000000 \
ENEMY_DROP_ITEM_RATE=1.000000 \
DEATH_PENALTY=All \
ENABLE_PLAYER_TO_PLAYER_DAMAGE=false \
ENABLE_FRIENDLY_FIRE=false \
ENABLE_INVADER_ENEMY=true \
ACTIVE_UNKO=false \
ENABLE_AIM_ASSIST_PAD=true \
ENABLE_AIM_ASSIST_KEYBOARD=false \
DROP_ITEM_MAX_NUM=3000 \
DROP_ITEM_MAX_NUM_UNKO=100 \
BASE_CAMP_MAX_NUM=128 \
BASE_CAMP_WORKER_MAXNUM=15 \
DROP_ITEM_ALIVE_MAX_HOURS=1.000000 \
AUTO_RESET_GUILD_NO_ONLINE_PLAYERS=false \
AUTO_RESET_GUILD_TIME_NO_ONLINE_PLAYERS=72.000000 \
GUILD_PLAYER_MAX_NUM=20 \
PAL_EGG_DEFAULT_HATCHING_TIME=72.000000 \
WORK_SPEED_RATE=1.000000 \
IS_MULTIPLAY=false \
IS_PVP=false \
CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP=false \
ENABLE_NON_LOGIN_PENALTY=true \
ENABLE_FAST_TRAVEL=true \
IS_START_LOCATION_SELECT_BY_MAP=true \
EXIST_PLAYER_AFTER_LOGOUT=false \
ENABLE_DEFENSE_OTHER_GUILD_PLAYER=false \
COOP_PLAYER_MAX_NUM=4 \
MAX_PLAYERS=32 \
SERVER_NAME="jammsen-docker-generated-###RANDOM###" \
SERVER_DESCRIPTION="Palworld-Dedicated-Server running in Docker by jammsen" \
ADMIN_PASSWORD=adminPasswordHere \
SERVER_PASSWORD=serverPasswordHere \
PUBLIC_PORT=8211 \
PUBLIC_IP= \
RCON_ENABLED=false \
RCON_PORT=25575 \
REGION= \
USEAUTH=true \
BAN_LIST_URL=https://api.palworldgame.com/api/banlist.txt
CMD ["/servermanager.sh"]