幻兽帕鲁 docker 服务器部署

598 阅读1分钟

1、背景

主机模式无法支持更多的朋友游玩,且主机得一直开着,因此需要部署私人的服务器

2、Docker

1、依次运行以下命令进行安装,官方容器地址

$ docker run -it --name=steamcmd -p  8211:8211/udp -v /home/**/**:/home/steam/Steam cm2network/steamcmd
$ ./steamcmd.sh +force_install_dir /home/steam/squad-dedicated +login anonymous +app_update 403240 +quit
$ /home/steam/steamcmd/steamcmd.sh +login anonymous +app_update 2394010 validate +quit

2、退出容器,进入容器挂载的目录(/home/** /** )修改世界环境配置 官方配置链接

3、启动游戏

docker exec -d steamcmd bash -c "/home/steam/Steam/steamapps/common/PalServer/PalServer.sh"

3、设置定时任务重启服务器

主要是官方的服务器内存泄漏,因此需要定时重启。

1、建立内存监控脚本

MEMORY_USAGE=$(free | awk '/^Mem/{print $3/$2*100.0}' | cut -d "." -f 1)

THRESHOLD=90

echo "start monitor"

if [ $MEMORY_USAGE -gt $THRESHOLD ]; then
  sudo docker restart steamcmd && sudo docker exec -d steamcmd bash -c "/home/steam/Steam/steamapps/common/PalServer/PalServer.sh"
  echo "restart pid"
fi

echo "end monitor"

THRESHOLD为阈值,内存占用超过90%重启

2、启动定时任务

chmod +x monitor_memory.sh
crontab -e
*/5 * * * * /home/**/monitor_memory.sh

脚本会5分钟执行一次,自动监控内存,并重启服务。