Gitlab
关于Gitlab,首先需要厘清下面相关概念:
Git是版本控制工具
GitServer是远程管理仓库,没有界面,只能使用命令行
Gitlab是私有代码库Web管理工具
Github相当于公开的Gitlab
优点:
- 支持类似于github强大而又简单的UI交互型操作
- 支持安装包部署在自己服务器上,安全,开源,免费
- 支持邮件服务
- 支持分支保护等
安装
环境:Centos7
安装ssh postfix(邮件通知),配置防火墙
yum -y install curl policycoreutils openssh-server openssh-client
yum -y install postfix
systemctl enable sshd postfix
systemctl start sshd postfix
firewall-cmd --permanent --add-service=http
systemctl reload firewalld
下载gitlab安装包
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
yum -y install gitlab-ce
由于上面使用的是国外的gitlab-ce仓库,会导致下载很慢,所以建议使用国内镜像
vi /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
yum makecache
yum -y install gitlab-ce
编辑配置文件
vi /etc/gitlab/gitlab.rb
# 以QQ邮箱为例
# 编辑项有:
# external_url:表示需要访问gitlab的url,默认以http开口,自定义端口,可以使用X.X.X.X:port。这里不要使用8080端口,且保证没有其他服务使用8080。因为unicorn(git的webserver)默认使用的是8080
external_url 'http://192.168.60.135'
gitlab_rails['smtp_enable'] = true # 允许启动smtp邮件服务
gitlab_rails['smtp_address'] = "smtp.qq.com" # 邮件服务器地址
gitlab_rails['smtp_port'] = 25 # QQ邮件服务器端口
gitlab_rails['smtp_user_name'] = "smtp user"
gitlab_rails['smtp_password'] = "smtp password"
gitlab_rails['smtp_domain'] = "example.com" # 邮件服务器的域名(地址)
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['gitlab_email_from'] = '123456@qq.com'
gitlab_rails['gitlab_user_email'] = '123456@qq.com'
gitlab_rails['gitlab_email_display_name'] = 'Kyle_Gitlab'
gitlab_rails['gitlab_email_reply_to'] = '123456@qq.com'
注意:每次修改了配置文件都必须是配置文件重新加载生效
使配置生效
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
gitlab-ctl reconfigure
启动gitlab
gitlab-ctl start
gitlab-ctl restart # 修改了配置文件后重新启动
gitlab-ctl stop # 停止gitlab
gitlab-ctl status # 查看gitlab运行状态
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION # 查看当前gitlab版本号
测试访问
访问:http://ipaddress
,会提示修改登陆密码(由于忘记截图,所以暂时用登陆界面替换),修改成功后,使用root
进行登陆,出现图2,表示安装成功。