本人在这方面纯业余爱好!有问题轻点喷
事情的起因是前段时间买了个1G1C的云服务器w
在搭建完一个小玩意以及Hexo还有自己的邮箱之后呢,发现还有不到一半内存可以使用
想起朋友的服务器上挂了个Gitlab,所以寻思着自己也在自己服务器整个git服务
正文w
因为我朋友服务器是给他自己的团队用的,所以配置很高,我这个就是看便宜就买了(,1G1C肯定比不上人家,更别说整个GitLab了,所以我选择了更低配的Gogs
虽然说个人用还整个Git干啥呢官方文档中提到团队工作至少2C,不过我个人用1C肯定足够了
安装
安装部分具体看 Gogs安装
我比较懒,选择的直接下载2进制文件(下面链接是amd64的)
1 | wget https://github.com/gogs/gogs/releases/download/v0.13.3/gogs_0.13.3_linux_amd64.zip |
然后进入gogs目录并执行进行初始化
1 | cd gogs |
打开浏览器 http://ip:3000 对gogs进行初始化配置,可以根据自己需要改
我就把数据库改成了SQLite,改了一下SSL模式,设置了一个管理员账户,其他的用的默认配置
完成后就ok了,不过这里要注意一下,你用ssh进程运行的Gogs,当进程退出后就没法用了
如果想让Gogs一直运行可以弄成systemd服务,或者弄个独立的screen会话,我比较懒选择的后者
1 | screen -S gogs |
配置SSL和域名
我用1Panel申请的SSL证书,申请完证书后,在 gogs/custom/conf/app.ini 中修改以下内容
1 | [server] |
**fullchain和privkey都可以直接用,不用转为.crt和.key, **我以前以为CERT_FILE必须为.crt
进入会话重启gogs,配置即生效,具体可以看log文件(gogs/log/gogs.log), 你应该可以看到这段文字
1 | Available on https://yourdomain.top/ |
如果你已经设置好了A记录,你现在可以在 https://yourdomain.top:3000/ 看到你的gogs页面
你应该注意到了,直接访问 https://yourdomain.top/ 不会看到你的gogs页面(除非你用的443端口)
这里我用的1Panel面板操作的,在网站里增加反向代理到127.0.0.1:3000,协议https,创建
创建之后你会发现你还是不能直接访问 https://yourdomain.top/ 看到你的gogs页面(,因为这个时候你还需要在 网站 > 编辑 里打开https,证书就用上面申请的那个就行
现在,访问 https://yourdomain.top/ 就可以看到你的gogs页面啦!
本站,可以作为示例: https://git.lapis-net.top/lovekogasa
Git测试: git clone https://git.lapis-net.top/lovekogasa/TestResp.git
我想打repo结果打错了(
另附
内存少建议划一些(我划了2G)虚拟内存(swap),可以节省不少物理内存,防止突发情况
另外自建git服务要注意安全,防止被恶意滥用,尽管在一些大文件上gogs默认配置有一定的防护)
说些什么吧!