Grasscutter icon indicating copy to clipboard operation
Grasscutter copied to clipboard

[Feature Request] 可不可以添加Docker一键部署?

Open JiaLeDe opened this issue 2 years ago • 9 comments

将所有环境,包括mongo打包成一个docker,这样的话,仅安装一个docker就可以把服务端跑起来了,docker中包含mongo,jdk1.7等

JiaLeDe avatar Jan 30 '23 05:01 JiaLeDe

我也想真么弄 弄哈几天弄不到一起,群晖里弄了两个docker 还有就是外网老提示4206 内网没事

luuziiyoo avatar Jan 30 '23 12:01 luuziiyoo

可以的,但是有封杀的风险(毕竟这样容器里面包含了resource file文件,这个一般都是存在私人的gitlab)。其实整起来说并不是很困难,按照一个mongo、java环境,然后编译一下,参考一下网站https://mihoyo-is-in.icu/

一般来说配置好了之后的docker还需要一个p8证书文件,这个证书文件就算是敏感信息了,放在宿主机可能又要配置半天,所以综上考虑docker只能说方便自己部署,在不同服务器之间迁移,但是不适合公开。

如果把linux分区进行加密呢(?

zhaodice avatar Jun 07 '23 15:06 zhaodice

docker本来就是用来方便部署的,拉取image然后一键启动,上面说的安全性问题是打包后的image公开的话,别人就可以获取到你的image,然后启动之后里面有你的证书信息,这样不太好(你如果说的是镜像里面的东西想要加密,那没必要,加密了你gc-server的程序要读取,还麻烦,p8证书自己就有一个加密的密码,那个密码需要再gc的配置文件里面写好的,所以相当于也是直接公开了)。或者,如果你通过volume挂载的话(把容器里面的目录挂载出来),然后把你的证书放在服务器的某个位置(这个分区加密不加密无所谓,只要安全就好),那也可以,但是就又多了一步文件的事情,估计你可能也觉得麻烦。

或者你如果觉得自己的域名无所谓安全性,直接公开出来也好

我觉得比较好的方法是配置好自己的CI/CD工作流,代码更新之后利用git-action将更新自动发布到自己的私有镜像仓库(镜像直接包含证书),然后一键更新自己的服务器容器。最近好久已经没用这个gc了,也不知道现在是不是一定要https,但是我记得没开https是会有些4206的问题的。(近期在考虑,打算docker自动化打包镜像,有空更新)

哦对了 https://mihoyo-is-in.icu/ 这个站已经挂了,哎,需要的话查看https://github.com/GenKitCN/gcdoc

文档网站:https://genkit.org/

ayaka-lab avatar Jun 07 '23 16:06 ayaka-lab

来打个自己的脸,docker搞好了,把dockerfile写上去,剩下的volume 证书挂载上去就好 如果要获取终端用docker attach。

(现在我宁愿捣鼓docker一键部署) 网站:https://github.com/ayaka-lab/grasscutter-toolkit 仓库:https://hub.docker.com/repository/docker/ayakalab/grasscutter/general

ayaka-lab avatar Aug 12 '23 12:08 ayaka-lab

这样方便许多

tignioj avatar Aug 15 '23 23:08 tignioj

我也想真么弄 弄哈几天弄不到一起,群晖里弄了两个docker 还有就是外网老提示4206 内网没事

你好老哥 有解决吗,我也是这样目前还没解决,现在暂时是怀疑啥端口少开放了

Thequnlang avatar Sep 07 '23 09:09 Thequnlang

还有个udp的端口吧( 你别忘了udp的 docker默认不开放udp,只有tcp

端口号忘记了(然后怎么放docker的udp恐怕你得查一下

发自我的 iPhone

在 2023年9月7日,17:27,Thequnlang @.***> 写道:



我也想真么弄 弄哈几天弄不到一起,群晖里弄了两个docker 还有就是外网老提示4206 内网没事

你好老哥 有解决吗,我也是这样目前还没解决,现在暂时是怀疑啥端口少开放了

— Reply to this email directly, view it on GitHubhttps://github.com/Grasscutters/Grasscutter/issues/2038#issuecomment-1709806997, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAMLT2FJCI7STW4Z6JBVP53XZGHRNANCNFSM6AAAAAAUKXK3PI. You are receiving this because you commented.Message ID: @.***>

ayaka-lab avatar Sep 07 '23 09:09 ayaka-lab

又看了一遍 内网可以玩外网不对 那你得检查你群辉的端口转发了…一般都是在服务器的,我服务器测试没有问题的(

发自我的 iPhone

在 2023年9月7日,17:27,Thequnlang @.***> 写道:



我也想真么弄 弄哈几天弄不到一起,群晖里弄了两个docker 还有就是外网老提示4206 内网没事

你好老哥 有解决吗,我也是这样目前还没解决,现在暂时是怀疑啥端口少开放了

— Reply to this email directly, view it on GitHubhttps://github.com/Grasscutters/Grasscutter/issues/2038#issuecomment-1709806997, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAMLT2FJCI7STW4Z6JBVP53XZGHRNANCNFSM6AAAAAAUKXK3PI. You are receiving this because you commented.Message ID: @.***>

ayaka-lab avatar Sep 07 '23 09:09 ayaka-lab

还有个udp的端口吧( 你别忘了udp的 docker默认不开放udp,只有tcp 端口号忘记了(然后怎么放docker的udp恐怕你得查一下 发自我的 iPhone 在 2023年9月7日,17:27,Thequnlang @.> 写道:  我也想真么弄 弄哈几天弄不到一起,群晖里弄了两个docker 还有就是外网老提示4206 内网没事 你好老哥 有解决吗,我也是这样目前还没解决,现在暂时是怀疑啥端口少开放了 — Reply to this email directly, view it on GitHub<#2038 (comment)>, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAMLT2FJCI7STW4Z6JBVP53XZGHRNANCNFSM6AAAAAAUKXK3PI. You are receiving this because you commented.Message ID: @.> 那,如果找到了麻烦分享下吧,docker的启动命令什么的,我目前开放的443,22102,80,8891,从配置文件里找不到其他端口号了,udp都试过了

Thequnlang avatar Sep 07 '23 10:09 Thequnlang