警告
本文最后更新于 2025-01-22,文中内容可能已过时。
昨天早上看到【聊天室 API】集群式摸鱼派聊天室 Beta 上线啦!,于是我想着咱也搞一个节点做做贡献。但是原先我在腾讯买的服务器根本达不到要求,2C4G还好说,但是带宽10M+真的不是一般人能承担得起的。
于是在我精打细选之后,想到了之前的腾讯云无忧计划轻量云升级之后好像可以达到条件。刚好新加坡那边的git服务器也要到期了,于是就有了今天的迁移计划。
Gitea的迁移是挺简单的,不过之前有个遗憾的地方是没有设置SSH直通,导致拉取代码会多带一个端口号,挺丑的。但是没想到在这里碰到了不少问题。
说起来,我的Gitea服务器也是一波三折,一开始是在国内直接部署的,后来国内换服务器导致重新备案,于是我就把服务器迁移到了香港,采用了docker的方式部署,而在这一直用的是PostgresSQL。
第二次迁移是因为香港的太贵了,于是换了新加坡的主机。考虑到也才2G,就用回了MYSQL,因此也写了一个脚本专门用于迁移仓库,顺便采用1panel封装好的APP方式部署。
这第三次迁移就是重新迁移到国内,之后应该不会再次迁移了。不过这次还是采用自己管理的Compose的方式部署,同时修改了1panel使用的国内Gitea镜像,因此也升级了版本。
Gitea的migrate部分还是挺令人放心的,尽管是从国内改为官方,还升级了版本,影响也不会很大。
迁移的过程非常简单,首先备份docker引用到的目录,然后导出数据库。之后在迁移到新的服务器上,重新写一个compose文件就可以了。
| |
SSH容器直通
既然是长期使用,那么我还是做了第二部分,去掉git连接中那个丑陋的端口号。
首先就是更改data/gitea/conf/app.ini中[server]下的SSH_PORT为22,如果是新部署的就可以忽略这步骤。
之后就是宿主机上需要操作的部分了。需要确保宿主机有一个git的用户,这里为了方便用户和用户组都采用了新的。
| |
最后说两句
说了这么多,主要还是因为中文的翻译文档导致的,相比英文的文档,中文的部分貌似是翻译加人工过滤之后的,虽然简洁明了,但是有些话还是有歧义的,导致一开始我以为只要是是有对应环境变量中用户的宿主机用户去操作就可以了,结果弄了半天都不行。
不过,我猜测使用其他用户应该也是可以的,而git@git.example.com:username/repo.git中的第一个git就是对应的用户名。不过后来也懒得测试了,就先这样吧。



























