https://about.gitlab.com/install/ 官网安装
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/ gitlab历史版本介绍
https://docs.gitlab.com/omnibus/README.html#installation-and-configuration-using-omnibus-package 配置文件详细介绍
gitlab分为社区版(gitlab-ce)和企业版(gitlab-ee),我们通常安装的是gitlab-ce
配置要求:
一 安装依赖和设置防火墙
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld
## 安装邮件服务
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
二 添加gitlab仓库
创建/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 install -y gitlab-ce
四 启动
sudo gitlab-ctl reconfigure #生成配置文件并启动
gitlab-ctl status # 查看启动状态
注意:gitlab默认用到的端口号,有80和8080,保证没有冲突
五 访问web页面
第一次需要你设置root密码
六 常用命令
sudo gitlab-ctl start # 启动所有 gitlab 组件;
sudo gitlab-ctl stop # 停止所有 gitlab 组件;
sudo gitlab-ctl restart # 重启所有 gitlab 组件;
sudo gitlab-ctl status # 查看服务状态;
sudo gitlab-ctl reconfigure # 启动服务;#运行会把 gitlab 的 相关用户属性、配置文件和权限还原
sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;
sudo gitlab-ctl tail # 查看日志;
七 后期自定义配置
7.1 更改时区
sudo vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
time_zone: 'Asia/Shanghai' #默认是空的
sudo vim /etc/gitlab/gitlab.rb
gitlab_rails['time_zone'] = 'Asia/Shanghai'
重启 gitlab:
sudo gitlab-ctl restart
7.2设置邮件发送
external_url 'http://192.168.6.220' # gitlab的地址
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "825536458@qq.com"
gitlab_rails['smtp_password'] = "dpbxxxxxx" # 这个密码不是邮箱的登陆密码,而是smtp的密码是客户端授权码
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['gitlab_email_from'] = '825536458@qq.com'
user["git_user_email"] = "825536458@qq.com"
配置完成之后可以先检查一下配置文件,
gitlab-rake gitlab:check SANITIZE=true --trace
如果没有问题,重新加载配置文件
sudo gitlab-ctl reconfigure
发邮件测试:
gitlab-rails console #进入 gitlab 命令行模式
Notify.test_email('huningfei@126.com', 'Message Subject', 'Message Body').deliver_now
查看是否能收到邮件
7.3 设置gitlab权限以及注册功能
我们公司内部的代码肯定都是要加密的,不能随便公开,所以要把项目设置成私有状态
然后我们也需要把gitlab服务器的自己注册功能给关闭,不能让人随便注册