最近在家线上办公,所以要搭一个Giltab方便大家传代码,忙活了俩小时才弄好,看了很多文章很少有说的全面的,中间有些坑,所以记录一下。
1
在CentOS上安装Gitlab需要一些依赖,ssh、防火墙、wget等等。已经安装过的可以直接跳到第二部直接安装gitlab
安装ssh
sudo yum install -y curl policycoreutils-pythonopenssh-server
将ssh设置为开机自启动
sudo systemctl enable sshd
启动ssh服务
sudo systemctl start sshd
安装防火墙
service firewalld start
添加http服务到firewall,pemmanent表示永久生效,若不加–pemmanent系统下次启动后就会失效
sudo firewalld-cmd —permanent —add-service=http
重启防火墙
sudo systemctl reload firewalld
wget是从网络上下载文件的工具,安装wget
yum install wget
安装vim编辑器
yum install vim -y
2
依赖上面已经安装完毕,下面开始安装gitlab。
1.首先下载rpm包,大家可以去这里自行选择安装包
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-11.3.4-ce.0.el7.x86_64.rpm
下载好安装包之后开始安装
rpm -ivh gitlab-ce-11.3.4-ce.0.el7.x86_64.rpm
2.安装好之后配置服务器IP和端口号,这里我们顺便把SMTP邮件通知功能一起配置了,因为都在同一个配置文件中。
vim /etc/gitlab/gitlab.rb
将这里修改为服务器的IP加端口号,gitlab默认端口号为80。
3.然后配置SMTP邮件通知功能,在文件的最下方添加,这里是以腾讯企业邮为例,具体可参考Gitlab官方文档
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxxx@xx.com"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = 'xxxx@xx.com'
gitlab_rails['smtp_domain'] = "exmail.qq.com"
下面是我配置好的自己的
重置并启动Gitlab
gitlab-ctl reconfigure
gitlab-ctl restart
以后再修改配置文件的话只需要执行第一句即可。
之后直接访问配置好的ip加端口号即可登录Gitlab,初始账户为
用户名:root
密码:5iveL!fe
3
过程中遇到的问题
1.密码问题
我们修改配置文件时的password客户端专用密码,而不是你的邮箱的登陆密码,这点切记!
2.端口问题
要确保你配置的Gitlab的端口没有被占用,如果在服务器上部署的话还要确保这个端口是开放的,在安全组那里可以自行配置。
3.内存问题
安装gitlab的时候,已经说明需要有4G左右的内存
tips:
下面是网易企业邮箱的配置,顺手保存一下,网易企业邮箱的密码是邮箱的登陆密码,这点和腾讯企业邮箱是不一样的,要注意
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qiye.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_user_name'] = "xxxx@xxx.com"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_domain'] = "xxx.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['gitlab_email_from'] = "xxxx@xxx.com"
user["git_user_email"] = "xxxx@xxx.com"