稍具规模一点的公司都会搭建属于自己的git,svn,而内部git用的最多的则是gitlab,虽然官网已经提供了非常多的功能,但内网搭建更能保证项目的私有性,只有公司内部员工才可以访问,更加安全。
这里演示gitlab的搭建与简单配置
操作安装一些依赖软件包,SSH一般系统是默认安装好的,不过也不排除一些最小安装的系统没有sshd服务,如果不是root用户需要加上sudo。
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
关闭防火墙,或者开放HTTP的端口
//刷新防火墙的规则
iptables -F
安装邮件服务,当gitlab想要通过邮件通知,也可以另外配置其它的邮件服务器
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
从官网获取一件安装脚本,当然自己手动安装也是可以的gitlab下载地址,使用官网脚本会简单一些。执行这一步会如果使用CentOS系统,会添加gitlab的yum源
//输出到文件里是为了看下下载的脚本内容
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh > rpm.sh
#加可执行权限
chmod +x rpm.sh
#执行
./rpm.sh
安装gitlab
#使用yum安装gitlab
yum install -y gitlab-ee
#可以看下gitlab-ee包的内容,看到gitlab安装在/opt/gitlab目录下
rpm -ql gitlab-ee | less
上面已经安装好了gitlab,不过可以稍作一些配置,配置gitlab监听的地址与端口,gitlab的配置文件在/etc/gitlab/目录下,主要配置文件为gitlab.rb
我修改了下gitlab.rb文件中的nginx监听地址,
#我只是修改了这个external_url参数'http://ip:port',这个是你页面上访问gitlab的地址
external_url 'http://gitlab.ai-he.me'
里面的配置项非常的多,可以对照官网文档根据需要修改。gitlab配置选项
运行gitlab命名,并重启
#重新配置gitlab
sudo gitlab-ctl reconfigure
#重启gitlab
gitlab-ctl restart
# 查看gitlab-ctl命令的帮助信息
gitlab-ctl --help
在执行gitlab-ctl reconfigure的时候最后执行会报这个错误,
但是执行gitlab-ctl restart的时候都是ok的,就是在访问页面的时候报502的错误,原因是因为我的虚拟机内存太小,我装的虚拟机内存是1G,我改成3G的内存问题就解决了
遇到报502这种错误的话也有可能是8080端口被占用了,需要修改配置中的端口,修改一下etc/gitlab/gitlab.rb文件下加入unicorn[‘port’] =自定义端口;
打开浏览器查看效果,第一次打开页面会让我们设置root用户的密码。记住自己设置的密码,再次刷新进入登录页面
以管理员身份登录,默认的用户是root,密码是刚才设置的。
搭建好环境之后,下面的则根据官方文档解释,自己摸索做一些根据自己需要的修改,二次开发也可以。
最后
公司内部一般都会搭建内部gitlab仓库,自己搭建下摸索着玩玩。