配置GitLab
配置Git存储仓库目录
默认存储的目录是/var/opt/gitlab/git-data下的repositories目录。修改存储目录时,则需要在主配置文件/etc/gitlab/gitlab.rb中增加以下内容
sudo vi /etc/gitlab/gitlab.rb
# 若没有配置Git存储仓库目录,添加以下部分代码,若已配置该部分代码,则修改已有内容即可
git_data_dirs([{
"default" => {"path" => "/home/gitlab/git-data"}
})
# 也可以添加多个仓库,default是默认仓库,如果需要切换到其他设定仓库,则可以在界面的管理员设置中修改
git_data_dirs([{
"default" => {"path" => "/home/gitlab/git-data"},
"alternative" => {"path" => "/home/gitlab/git-data-alternative"}
})
# 重新配置使之生效
sudo gitlab-ctl reconfigure
GitLab数据仓库迁移
- 若GitLab无项目时,则可以忽略此步骤,直接在GitLab界面中创建项目进行使用即可
- 若GitLab在修改存储目录之前已存有项目,则修改存储目录后,需要进行GitLab数据仓库迁移,具体步骤如下:
public static void main(String[] args){
System.out.println("aaaa")
}
# 首先停止GitLab的所有服务
sudo gitlab-ctl stop
# 进行目录同步操作
sudo rsync -av /var/opt/gitlab/git-data/repositories /home/gitlab/git-data
# 查看新目录下的数据迁移是否成功,以及目录层级有没有错误
sudo ls /home/gitlab/git-data
# 重新启动GitLab的所有服务
sudo gitlab-ctl start
# 重新载入GitLab的配置
sudo gitlab-ctl reconfigure
配置邮件SMTP
我们在安装GitLab的同时也安装了邮件服务,所以如果使用默认配置并且能够访问外网,GitLab是可以直接发送邮件通知的,但是如果有些内网对网络访问有限制,那么就需要通过内容的SMTP服务发送邮件。具体步骤如下:
- 在主配置文件/etc/gitlab/gitlab.rb中添加SMTP信息(以gmail为例)
# 配置邮件SMTP
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "gmail邮箱账号"
gitlab_rails['smtp_password'] = "gmail邮箱密码"
gitlab_rails['smtp_domain'] = "smtp.gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
# 邮件默认发送于gitlab@localhost,如果不符合要求,可以修改下面的参数进行定制
gitlab_rails['gitlab_email_from'] = 'mail address'
gitlab_rails['gitlab_email_reply_to'] = 'mail address'
- 测试邮件发送
gitlab-rails console
irb(main):001:0>Notify.test_email('it_wangxiaobai@163.com', 'test', 'test').deliver_now