帕鲁服务器搭建

幻兽帕鲁

幻兽帕鲁服务器搭建

为什么折腾呢,是因为有一台服务器,但是只有2c2g,不用上又不甘心,正好还有一台空闲的电脑,所以,开整!

Quote

其实就是 自己电脑当服务器,用云服务器的公网ip映射出去,所有,真正用到的服务只有 frp

如果有跟我一样配置的朋友,用宝塔面板安装frp即可。

下面的所有仅供参考,不是说不能实现,只是对于服务器只进行frp的朋友来说过于繁琐。

整体流程如下:

  • 服务器安装frps
  • 客户端安装frpc
  • 客户端安装游戏服务
  • 开玩~

服务端配置

Docker配置

Tips

Docker17.03版本之后分为CE(社区版)和EE(企业版),这里使用社区版

Docker支持64位版本的``CentOS 7CentOS 8`及更高版本,它要求Linux内核版本不低于3.10

  1. 检查 linux 版本

    lsb_release  -a
    
    >>> LSB Version:    :core-4.1-amd64:core-4.1-noarch
    >>> Distributor ID: CentOS
    >>> Description:    CentOS Linux release 8.5.2111
    >>> Release:        8.5.2111
    >>> Codename:       n/a
    

    可以看到当前linux的版本为CentOS 8,再看下内核是否不低于3.10

    uname -r 
    >>>  4.18.0-305.3.1.el8.x86_64
    
  2. Docker 安装

    这里直接选用一键安装的脚本,主打一个快捷迅速

    #  官方的一键安装方式
    curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
    # 	国内 daocloud 一键安装命令
    curl -sSL https://get.daocloud.io/docker | sh
    

    执行上述任意一条命令,耐心等待安装完成

  3. 启动 Docker

    #  服务器重启  docker 进程不会自动启动的 ,需要再次运行此命令
    sudo systemctl start docker
    # 	开机自启
    systemctl 	enable	 docker		 
    

docker-compose 安装

  1. 前往 docker-compose 的 github 官网下载二进制包

    Releases · docker/compose (github.com)

  2. 上传服务器并改名

    # 拷贝文件到/usr/local/bin,如果文件已经在/usr/local/bin目录,忽略此步骤
    # 假如二进制文件docker-compose-linux-x86_64上传的目录是:/opt/docker
    cp /opt/docker/docker-compose-linux-x86_64 /usr/local/bin
    
    
    # 更改二进制文件名字
    mv docker-compose-linux-x86_64 docker-compose
    
  3. 赋予权限

    sudo chmod +x /usr/local/bin/docker-compose
    
  4. 测试结果

    docker-compose  --version
    >>> 	Docker Compose version v2.24.0
    

下载 frps

  • 方法一:

    #  如果没有git
    yum 	-y				 install 	git
    git 	clone  xxx
    
  • 方法二:

    • 创建frp目录

      mkdir -p /usr/my_packeg/frp/conf #默认为root用户
      
      cd /usr/my_packeg/frp
      
    • 创建 docker-compose.yml 和 frps.toml 文件

      vim docker-compose.yml
      touch ./conf/frps.toml
      
    • 配置 docker-compose.yml 文件

      version: '3'
      services:
        frps:
          image: 'fatedier/frps:v0.53.2'
          restart: always
          container_name: frps
          environment:
            TZ: 'Asia/Shanghai'
          ports:
            - "7000:7000"
            - "7001:7001"
            - "8211:8211/udp"
          volumes:
            - '/etc/localtime:/etc/localtime:ro'
            - './conf/frps.toml:/etc/frp/frps.toml'
          command: ["-c", "/etc/frp/frps.toml"]
      

开放端口

​ 服务器的端口开放基本在安全组里面,总的来说,需要放行的端口如下:

端口协议来源
8211UDP0.0.0.0
7000TCP0.0.0.0
7001TCP0.0.0.0

客户端配置

下载客户端 frpc

  1. 下载链接 frp_0.53.2_windows_amd64.zip
    frpc解压后
  2. 解压之后打开frpc.toml:
serverAddr = "你服务器的ip地址"
serverPort = 7000

[[proxies]]
name = "palword server"
type = "udp"
localIP = "127.0.0.1"
localPort = 8211
remotePort = 8211
  1. 在此处输入 cmd:
  2. 在 cmd 中打开 frpc:
frpc -c frpc.toml
  1. 访问 你的ip:7001页面,查看 udp 端口 是否已连接
    在这里插入图片描述

打开steam服务

  1. steam上搜索 Palworld Dedicated Server,点击启动

  2. 选择 Palworld Dedicated Server,点击开始游戏即可

    ​ 控制台会出现如下:

    Setting breakpad minidump AppID = xxxxxxxx
    
    Tips

    ​ 在其他电脑上登同一个 steam 账号的话会有提示,不用管它

开放 windows 端口

  1. 在底部搜索栏搜索 防火墙 点击 Windows Defender 防火墙
    在这里插入图片描述

  2. 点击高级设置
    在这里插入图片描述

  3. 创建入站规则

    1. 在这里插入图片描述

    2. 在这里插入图片描述

    3. 在这里插入图片描述

    4. 在这里插入图片描述

    5. 在这里插入图片描述

备份存档实现

​ 由于服务器不太稳定,可能出现炸存档的情况出现,所以在此用 MinIO 定时存储游戏文件

创建 MinIO 存储桶

还是在 docker-compose.yaml 文件里面:

 # 跟fprs同级别 
  minio:
    image: quay.io/minio/minio:RELEASE.2022-08-02T23-59-16Z
    container_name: project_minio
    volumes:
      - ./minio/data:/data
      - ./minio/config:/root/.minio
    ports:
      - "9000:9000" # api 端口
      - "9001:9001" # 控制台端口
    env_file:
      - ./minio/.envs
    command: server --address ':9000' --console-address ':9001' /data  # 指定容器中的目录 /data
    privileged: true

docker-compose.yaml所在目录下创建相应文件:

mkdir -p minio/data &&  mkdir  minio/config && touch minio/.env

在配置文件.env中添加配置

TZ=Asia/Shanghai
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=12345678
MINIO_SERVER_URL=""
MINIO_COMPRESS=off
MINIO_COMPRESS_EXTENSIONS=""
MINIO_COMPRESS_MIME_TYPES=""

Warning

记得防火墙开放端口9000,9001 TCP

进入网站 ip:9001 输入 admin 12345678 进入:
在这里插入图片描述

创建一个桶:
在这里插入图片描述

设置桶为公开桶:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

暂时先手动上传吧,懒得写脚本了==,存档位置在steam\steamapps\common\PalServer\Pal\Saved\SaveGames

其他

优化

  • 打开虚拟内存

  • 官方优化如下:

    1. 找到 Palworld Dedicated Server,右键选择属性:

      在这里插入图片描述

    2. 在下图所示红框的文本框中输入下面的参数(此参数可以优化服务器多核性能,来自 官方文档):

    -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
    

    在这里插入图片描述

配置

​ 在 steam\steamapps\common\PalServer\DefaultPalWorldSettings.ini这里面是配置的模板。

​ 依次打开 Pal/Saved/Config/WindowsServer/PalWorldSettings.ini 即为当前世界配置,复制上面的样板粘贴进入后修改即可。

具体配置项您可以参考 官方文档,这里提供一些常用项目:

Tips

倍率类项目可以为小数,即 1.000000 0.500000 此类。
是否类项目应为 True(是) 或 False(否)

配置名说明
DeathPenalty死亡掉落: None: 不掉落 Item: 只掉落物品 ItemAndEquipment: 掉落物品和装备 All: 掉落物品、装备和帕鲁
DayTimeSpeedRate白天时间流速倍率
NightTimeSpeedRate夜晚时间流速倍率
ExpRate经验获取倍率
PalStaminaDecreaceRate帕鲁耐力消耗速度倍率
CollectionDropRate收集物掉落倍率
WorkSpeedRate工作速度倍率
bEnableAimAssistKeyboard是否开启辅助瞄准
bEnableFastTravel是否开启传送

内存自动回收

这里使用的是Memreduct ,可以定时和超过阈值自动清理内存

官网:henrypp/memreduct: Lightweight real-time memory management application to monitor and clean system memory on your computer. (github.com)

随便找的使用方法:Memreduct:一款小巧的内存清理软件 - 知乎 (zhihu.com)

TODO

  • 自动定时上传游戏存档
  • 一键下载游戏存档并覆盖
  • 一键启动windows palworld 和 frpc
  • 一键部署服务器脚本
  • 22
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值