最近在玩“帕鲁幻兽”这个游戏。但是游戏大热,使用游戏提供的邀请码组队间歇性的无法链接与创建成功。遂有了这个使用 steamCDM 的 Docker 镜像完成服务器的搭建。方便小伙伴联机实现“大师”梦。
开始
依照官方服务器要求最低要求。4C8G。链接
Requirements
| CPU | 4Cores (recommend) |
|---|---|
| RAM | 16GB Recommend over 32GB for stable operation. It is possible to start the server with 8 GB, but the further you play, the server will crash due to out of memory. |
| Network | UDP Port 8211 (Default) Port forwarding required. |
开始创建
实现步骤很简单
- 使用 SteamCDM 下载游戏服务器
- 启动游戏服务器
下载游戏服务器
这里使用的官方提供的 SteamCDM 镜像 cm2network/steamcmd
docker 启动镜像
docker run -it --name=steamcmd cm2network/steamcmd bash
进入容器,执行下面命令下载游戏服务
/home/steam/steamcmd/steamcmd.sh +login anonymous +app_update 2394010 validate +quit
下载完成后,执行下面脚本启动游戏服务
/home/steam/Steam/steamapps/common/PalServer/PalServer.sh
镜像目录映射
使用目录映射,减小镜像大小,并将游戏服务器内容持久化。
[host]:/home/steam/Steam
[host]为宿主目录
容器启动时自动启动游戏服务
当游戏服务器下载完成,并服务启动成功时。可将启动容器配置成自动启动游戏脚本,避免再进入容器执行游戏服务启动脚本
docker run -d --name=steamcmd cm2network/steamcmd bash /home/steam/Steam/steamapps/common/PalServer/PalServer.sh
这里已经建议使用 cm2network/steamcmd 这个镜像启动游戏服务,避免输出缺少 steam 运行所需的运行文件。
游戏世界配置文件
由于是使用游戏服务器启动的,没有可视化的配置世界环境界面,需要自己通过修改配置文件来修改世界相关属性。
游戏默认配置文件位置
/home/steam/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
修改该文件不会影响世界,需要将该配置文件复制至下面的目录,并进行对应的修改才会生效。(需要正常启动游戏服务,才会生成对应的文件夹)
/home/steam/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
具体相关配置说明参考官方链接
到此,游戏服务器将以 docker 容器的模式启动。
如果想使用 docker-compose.yml 的形式启动,可使用这个在线将 docker run 命令转换成 docker-compose 的工具(工具链接)。