Gitblit配合Nginx搭建Git仓库(CentOS7)
关于Gitblit
Gitblit是一个以Git为基础的代码版本管理库。Gitblit简单易用,虽然界面不及Gitlab好看,但是Gitblit配置要求低,基本没什么依赖,而Gitlab依赖较多,搭建起来不是很方便(当然如果使用Docker那就很方便啦)。
使用
这里以 nginx 配合 gitblit 为例说一下 nginx 和 gitblit 配合使用搭建代码库。注:文章默认已经掌握nginx安装和基本配置技能、linux基本操作
下载安装Gitblit
首先从Gitblit官网下载Linux对应的压缩包,并解压到想要放的目录,比如/data/gitblit
,解压完的结构如下:
修改data/gitblit.properties文件里面的http和https端口配置,找到server.httpPort、server.httpsPort并修改为自己想要的端口,或者使用默认端口。
修改service-centos.sh文件,有几个变量(属性)要修改:1
2
3
4
5
6
7
8
9GITBLIT_HTTP_PORT、GITBLIT_HTTPS_PORT修改为刚刚我们设置的端口
GITBLIT_LOG是log要存放的位置
GITBLIT_PATH是Gitblit的安装路径
GITBLIT_BASE_FOLDER是数据存放的路径(默认应该是Gitblit安装路径中的data目录)
如果上面几项都没有,那么在脚本前面加入它们。
上面都是准备工作,如果配置好了,那么用root权限执行service-centos.sh脚本,执行完之后以后可以通过service gitblit {start|stop|restart|force-reload}
来启动停止gitblit。
现在运行service gitblit start
,如果启动成功,那么访问 your_ip:port 应该能看到Gitblit的欢迎界面了。
Nginx反向代理Gitblit
接下来我们为Git配置nginx的反向代理。
nginx的基本配置就不说了,现在给出简单代理Gitblit的配置1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17server {
listen 80;
server_name git.abcabc.com;
access_log logs/git.abcabc.com.access.log;
# 这一条配置主要是针对如果一次性提交量数据过大而设置
# 假如有资源文件,那么使用默认的nginx配置容易超出
client_max_body_size 100m;
location / {
proxy_set_header Host $host;
proxy_pass http://localhost:端口;
}
# https配置与http类似,这里不罗列了。
}
配置完之后reload nginx,那么我们现在可以通过git.abcabc.com访问gitblit啦。
默认的Gitblit管理员账号密码为admin/admin,配置完之后应该马上修改掉。
从安全性角度考虑:强烈建议使用https而非http。
- 本文链接:https://keepmoving.ren/devops/use-gitblit-with-nginx/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!