说明
git服务对于程序员来说不陌生,但是搭建自己的git服务估计很少有同志实践过。
我的习惯是家里电脑和办公电脑都自己搭建一套,有些需要记录版本信息但不方便放到公网的就可以在自己的电脑上用git服务管理,后期也方便追溯历史。
git自建服务的方式有很多种,官方的服务和第三方服务也不少;一般用户需要有界面,权限分级管理,多用户协作模式;在中小型的公司,使用gitlab自建的比较多;对于个人用户,我建议用gitea搭建,节省资源,节省时间,性价比更高。无论哪种gitea管理平台,都是遵循git协议的,记录可以通用,到时候换一下地址就行。
没有git服务的公司,劝退。
接下来讲述搭建过程。
服务依赖开源项目
- gitea:https://gitea.io/
软硬件支持
- 内网服务器
- 外网服务器
- 域名服务
- 内网穿透工具
访问方式
如要保障外网访问,需内网穿透工具才能访问内网的服务,并结合公网服务器才能转发访问请求
安装方式
内网安装 git 及 frp client
gitea
自行安装 gitea 服务
位置:D:\gitea
监听端口:80
已设置自启动服务:giteaService
配置文件:E:\gitea\custom\conf\app.ini
frpClient
- frp 官方地址:https://github.com/fatedier/frp#visit-your-web-service-in-lan-by-custom-domains
- 位置:D:\frpServices\frp_gitea
- 本地gitea服务端口:80
- 服务端通信端口:7000
- 已设置自启动服务:frp_gitea_service
- 配置文件:D:\frpServices\frp_gitea\frpc.ini
1 | [common] |
一般运行以下命令即可开启客户端服务
1 | frpc.exe -c frpc.ini |
但需要做成服务并自启动(使用 winsw ),修改 frpclient.xml
配置后,执行
1 | frpclient.exe install |
查看服务中是否存在对应的名称 frp_gitea_service,并确保服务为自启动
外网安装 frp server 及 Nginx 支持域名访问
外网安装 frp server
- 服务器:阿里云 或 其他
- 位置:C:\Program Files\frpServices\frp_gitea
- 监听端口:7000 - 本机服务,与客户端通信
- 访问端口:7001 - nginx 转发
- 已设置自启动服务:frp_gitea_service
- 配置文件:C:\Program Files\frpServices\frp_gitea\frps.ini
1 | [common] |
外网 nginx 支持域名访问
需要监听域名访问,配置文件 C:\Program Files\nginx-1.20.2\conf\conf.d\7001-gitea.conf
1 | upstream _gitea { |
运行方式
- 内外网均已配置自启服务
- 采用 winsw 制作自启动服务
维护
外网
- log
- frp: C:\Program Files\frpServices\frp_gitea\log\
- nginx: C:\Program Files\nginx-1.20.2\logs\
- 服务状态:查看服务中 frp-gitea-service 及 nginx 是否运行正常
- log
内网
- log
- frp: D:\frpServices\frp_gitea\log
- gitea: D:\gitea\log\logs
- 服务状态:查看服务中 frp-gitea-service 及 giteaService 是否运行正常
- log
log:D:\gitea\log
服务状态:查看服务中 giteaService 是否运行正常
迁移
- 支持直接拷贝数据文件夹,直接覆盖新的安装位置即可实现数据迁移。
- 或者使用 gitea 提供的迁移工具,具体查看官网介绍 https://docs.gitea.io/zh-cn/backup-and-restore/
- 数据文件夹:D:\gitea\data
- 本文作者: Linking
- 本文链接: https://linking.fun/2022/01/09/gitea内网服务安装及外网映射流程/
- 版权声明: 版权所有,转载请注明出处!