DockerGS
DockerGS 是一个只需一条命令就能运行 Grasscutter(某动漫游戏)的容器。
如何连接服务器
如何创建服务器:
Docker 版本
# 数据库(仅需一次)(如果你在容器外没有数据库或想在容器间使用,请使用此命令)
docker run --rm -it --name db_gc -p 2777:27017/tcp -d mongo &
# 游戏服务器(仅需一次下载资源,使用 -download_resource 'yes',之后可以设置为 -download_resource 'no')(记得将 2.0.0.100 替换为你电脑的 IP,不要使用"localhost",这很重要)
docker run --rm -it \
--name dockergs \
-v resources:/home/dockergs/resources \
-p 22102:22102/udp \
-p 80:80/tcp \
siakbary/dockergs:alpine-gc-4.0 \
--database 'mongodb://2.0.0.100:2777' \
--web_ip '2.0.0.100' \
--web_port '80' \
--game_ip '2.0.0.100' \
--game_port '22102' \
--download_resource 'yes' \
--ssl 'false'
--web_url_ssl "false"
或者如果你有 Docker Compose
git clone https://github.com/YuukiPS/DockerGS
cd DockerGS
# docker compose up # windows
docker-compose up -d # linux
- 然后输入 "account create yourusername",如果有新的响应,打开游戏。
- 大功告成
Windows(仅 Jar)
- 下载并安装 Java 17 JDK 和 MongoDB(如果你没有)(请记住,这不需要安装 Docker。)
- 下载 zip 文件,向下滚动,我相信你能轻松找到
- 打开 zip 文件并再次解压/打开 DockerGS_GC.tar 文件
- 成功解压后,你会找到 "work_gc" 文件夹,点击它,然后将其提取到你想要的文件夹(如果你有"官方/其他版本"的 Grasscutter,你可以覆盖它)
- 确保你有 "Resources"(文件夹、文件),你可以从 Yuuki 或 tamilpp25 获取
- 打开终端(确保你通过右键点击包含 jar 文件的文件夹来打开它),然后输入 "java -jar grasscutter.jar"
- 祝你玩得开心 :)
Ubuntu(仅 Jar)
待定
可用版本
版本 | 操作系统 | 平台 |
---|---|---|
4.0 (20) | Alpine | linux/amd64 |
下载(仅 Jar)
版本 | 平台 |
---|---|
4.0 (20) | linux/amd64 |
一些小贴士:
如何构建这个?
YuukiPS 的源代码现在已关闭,因为许多人从公共服务器/VIP 论坛下载时删除了"源链接、致谢",所以我们以后只会为 docker/jar 提供原版 Grasscutter Quest 或 Grasscutter。
如果你希望为 YuukiPS 做出贡献,请联系我。
必需品
- Java 17 JDK
- Docker
- Gradle
- MongoDB
- Lombok 使用以下命令克隆:
git clone https://github.com/YuukiPS/DockerGS
cd DockerGS
cd gs
# 0=2.6版本, 1=2.6早期版本, 2=2.7版本, 3=2.7早期版本, 4=2.8版本, 7=3.0版本, 8=3.1版本, 9=3.2版本, 10=3.3版本, 11=3.4版本, 12=3.5版本, 14=3.6版本, 15=3.6公开版, 16=3.7私有稳定版, 17=3.7私有任务版, 18=3.7公开版, 19=4.0私有版, 20=4.0公开版(稍后)
# 2.0.0.100是你的电脑IP,确保已安装MongoDB
sh run.sh # 默认构建本地主机
sh run.sh local res 20 # 获取基于服务器版本的资源文件
sh run.sh local start 20 # 不使用Docker运行本地服务器
sh run.sh alpine start 20 2.0.0.100 # 使用Docker Alpine运行本地服务器
sh run.sh ubuntu start 20 2.0.0.100 # 使用Docker Ubuntu运行本地服务器
sh run.sh local build 20 # 仅构建本地jar
sh run.sh alpine build 20 # 构建Docker Alpine镜像
sh run.sh ubuntu build 20 # 构建Docker Ubuntu镜像
sh run.sh ubuntu build 20 multi # 构建Docker Ubuntu多架构镜像
sh run.sh local sync 20 # 将Grasscutters同步到Yuuki
sh run.sh data core # 克隆补丁版本
注意:
- 如果遇到找不到sh的问题:将CRLF更改为LF
命令
变量 | 说明 |
---|---|
-db --database | 数据库服务器IP地址,注意:如果要在自己的电脑/服务器上运行,请使用电脑IP,不要使用"localhost",因为它是容器内的IP |
-webip --web_ip | 公共Web服务器的IP/域名 |
-webport --web_port | 公共Web服务器端口,如果要使用http用80端口,如果要使用https用443端口(默认80) |
-ssl --ssl | 如果设置为"true",将使https不可用;如果为"false",将使http不可用。请选择:(默认false) |
-weburlssl --web_url_ssl | 更改URL为"https"或"http",如果你有反向代理并使用自己的SSL,这很有用。(默认false) |
-gameip --game_ip | 游戏服务器公共IP |
-gameport --game_port | 游戏服务器公共端口 |
-msgwc --message_welcome | 聊天欢迎消息 |
-nmsv --name_server | 服务器名称 |
-nmow --name_owner | 服务器所有者名称 |
-nmrg --name_region | 服务器地区名称 |
-mailmsg --mail_message | 首次注册时的欢迎邮件 |
-po --player_online | 在线玩家限制(-1表示无限制) |
-loginpass --login_password | 如果你想在登录时使用密码功能提高安全性 |
-dlres --download_resource | 如果输入"yes"则重新下载资源,这在你已有资源文件夹但有最新更新时很有用 |
-lang --language | 服务器语言,包括命令更多信息 |
-j --java | -Xms500M -Xmx8G 更多信息 |
-h --help | 待完成 |
端口
端口 | 说明 |
---|---|
80 | HTTP Web服务器(非必需) |
443 | HTTPS Web服务器(必需) |
22102 | 游戏通信(UDP)(必需) |
贡献者
由Grasscutter提供支持 ❤️