根据配置文件快速建立饥荒联机版 (DST)Docker 集群
原始仓库为Thoxvi/Dont-Starve-Together-Docker-Cluster,但是原作者不更新了,趁着五一放假改了一波源代码,在原版基础上新增或修改的内容有:
- 使用可读性更好的yaml脚本作为配置文件,并且可以支持在一个配置脚本中修改更多的常用配置(具体支持修改的配置参考user-config.yaml的注释)
- 使用docker的python环境来执行配置生成脚本,现在不需要本地的python环境了
- 现在支持开启或者关闭洞穴,以便于在内存较小的服务器上运行
- 现在可以在配置文件中一键配置需要的mod
- 现在可以在玩到一半时增加mod,并保留原有存档
- 更新代码逻辑,便于进一步更新
- 现在还没有支持端口的自定义配置,可能导致无法在一台主机上开启多个饥荒服务器(有待测试)
- 现在还不支持一些不常见的配置,需要在生产data文件夹后手动修改配置文件
- 现在还不支持洞穴和地面分开配置
- 现在还不支持在暂停游戏时修改配置
- 镜像大约
580m
,包括底层 Ubuntu 镜像的话大约1G
- 大概每个实例(带洞穴的)占内存
1G
左右,CPU似乎不怎么占用 - 存档在生成的
data/名字/Master/save
里面,要备份的话,请用chown
到自己的用户名,再进行备份 - Mod的话请查看
./template/dedicated_server_mods_setup.lua
文件,有具体说明,建议 PC 机先建立一个世界,再把 Mod 配置好,最后再复制到对应位置(dedicated_server_mods_setup.lua
文件需要自行整理)
现在不需要python环境了,直接使用python的docker镜像作为配置脚本的运行环境。
运行makedata.sh脚本会自动拉取python镜像。
- 请根据自己的操作系统,在 Docker 官方网站选择适合的 DockerCE
- 如果是 Linux 的话,最好把自己的管理员用户添加到 Docker 用户组里,以免每次打命令都得加入 sudo,命令:
sudo usermod -aG docker $USER
- 安装
docker-compose
:如果你是 Ubuntu ,可以直接使用命令:sudo apt install docker-compose
,如果不是,请前往 Docker官方网站,并寻找自己的操作系统的安装方式 - 至此,你应该有了一个正常的 Docker 环境,如果有问题可以根据 END 区的联系方式提交
- Clone 项目:
git clone --depth=1 https://github.com/LaiQE/Dont-Starve-Together-Docker-Cluster.git
- 进入目录:
cd ./Dont-Starve-Together-Docker-Cluster
- 根据模板修改 user-config.yaml 文件, 关于饥荒服务器的更多配置选项根据参考资料中的第一个博客。(我们目前仅支持user-config.yaml中有的这些配置选项,其他选项要手动修改)
- 执行生成脚本:
bash makedata.sh
- 转到工作目录:
cd data
- 启动容器:
docker-compose up
- 若不想查看 Log 的话,可以在
启动容器
步骤使用:docker-compose up -d
- 更新,转到工作目录,
docker-compose stop
, 然后docker-compose up -d
git clone https://github.com/LaiQE/Dont-Starve-Together-Docker-Cluster.git
cd ./Dont-Starve-Together-Docker-Cluster
# 修改配置文件 user-config.yaml
bash makedata.sh
cd ./data
docker-compose up
- 停止现有服务器,在data目录下运行
docker-compose down
- 在项目目录下运行增加mod的脚本 add_mod.sh
cd ..
bash add_mod.sh 462434129 378160973 # 这里后面的数字是你要开启的mod, 个数不限
- 重新开启服务,在data目录下运行
docker-compose up -d
https://github.com/Thoxvi/Dont-Starve-Together-Docker-Cluster
https://blog.csdn.net/szhiy/article/details/79996017
https://blog.csdn.net/qq_35543890/article/details/81257937
https://dontstarve.fandom.com/wiki/Guides/Don%E2%80%99t_Starve_Together_Dedicated_Servers#Mods
https://blog.csdn.net/weixin_45050258/article/details/90378120