手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表2022年09月5日的文章

千辛万苦搭建了一台gitea server

一直使用github,也有因为各种原因使用过不少的git server,比如:codeup/gitee/coding/甚至腾讯工蜂,国外的么,bitbucket/gitlab其实也都有使用,这里面带来的最大的问题就是网络问题,当然国内的没这个毛病,但比如gitee,不能超过3个协作者(个人账户),coding的话,我个人是很喜欢的,甚至想成为他们的商业用户,但商业用户需要至少5个使用者。(国内好象其他平台也差不多,要想成为商业用户,几乎最少人数都是5人,一年500多我愿意付出,但2500多确实没有太大必要)

 
github/gitlab 当然没什么问题,但偶尔的不能访问也确实有点麻烦,这些都不是重要的。github也尝试过通过Action来进行自动部署,但确实不舒服,连接国内进行部署的时候,一个40多M的jar包。有一次传输上就花了将近10分钟,这种在国外向国内进行传输速度,有时候还是挺抽风的。
 
于是搭建git server的相法就开始了。之前其实也搭过,从16年开始,基本上就是用gogs,当然也不是没遇过问题,比如超过50M时就无法上传之类的。这时候就要改nginx最大允许的post max size了。这次是看到说gitea推出了【包管理(Package Registry)】,然后才决定使用的。
 
然而在使用的时候,就开始遇到各种问题了。比如不能运行在root下,腾讯的轻量默认是root用户嗯,cvm/阿里云的ecs,也是root,但阿里云的轻量,默认居然是admin。有点妖
然后创建git用户,测试su git -c '/usr/local/bin/gitea web'进行测试。到这里都没啥问题,然后我就开始遇到问题
1、用nginx做反向代理 ,毕竟我也不可能一直用ip+port进行访问,然而css/js全部无法访问,检查了很久,才发现原来是默认的配置文件里对css/js等静态文件做了过期时间设置,但因为最早3000端口被 zerotier的UI占用了。这时候他就一直不过期了。所以一直就无法访问(在缓存里?)这个有点麻烦,现在很多路径都是/assets/css/css.css,这种自动生成的格式,所以大部分自动打包的可能路径都是这种,这时候一旦被缓存了,短时间内就一直无法变改。这很纠结
2、ssh 登录,这个才是大坑。其实也是怪我自己,如果我允许port登录,估计早就解决了。比如我可以让root用户通过自定义端口登录,然后git用户就可以通过22端口登录了。(测试过可行,但不太想改默认登录端口,想复用端口,结果就启动不了了,好象非root用户进行的项目,无法使用1024以下端口)
3、最后只能使用docker来进行部署,然后因为我偷懒没使用docker,用了podman。。。默认安装的podman是3.0.4,使用podman-compose的时候有问题。于是又升级到4.2,然后才能正常使用podman-compose。对着官方文档配置 gitea脚本以及 默认的转发(再折腾了1个小时才搞完)
 
先做个笔记,后面看什么时候有空补上详细的,以后重装也能更方便一点