Git私服搭建之Gitlab

1 环境说明

  • gitlab官网:https://about.gitlab.com/
  • 服务器:CentOS 7
  • Gitlab版本:v11.6.0社区版(注:ce为社区版,ee为企业版)
  • Nginx版本:nginx/1.14.2
  • Redis版本:3.2.12
  • 邮箱账号:微软Outlook邮箱

2 安装和配置依赖

官方配置文档:https://about.gitlab.com/install/#centos-7

2.1 安装相关依赖

sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd

2.2 安装邮件服务postfix

#安装邮件服务postfix
sudo yum install postfix

#设置开机启动
sudo systemctl enable postfix

#启动postfix
sudo systemctl start postfix

2.3 添加GitLab包存储库

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

2.4 配置域名并安装

sudo EXTERNAL_URL="<自己的域名>" yum install -y gitlab-ce

3 配置nginx

Gitlab自带有nginx模块,但是我们有自己的nginx,所以需要单独配置nginx,如果决定使用Gitlab自带的nginx,此步聚可以忽略。

官方配置文档:https://docs.gitlab.com/omnibus/settings/nginx.html#using-a-non-bundled-web-server

3.1 进入编辑模式

vi /etc/gitlab/gitlab.rb

3.2 禁用内置Nginx

nginx['enable'] = false

3.3 添加外部nginx支持

#添加nginx所使用的用户到gitlab
web_server['external_users'] = ['nginx']

#将nginx加入信任列表
gitlab_rails['trusted_proxies'] = [ '127.0.0.1/80' ]

3.4 配置nginx

转到https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/web-server选择合适的配置文件,并加入nginx的conf.d目录中,修改域名。

3.5 重启nginx

nginx -s stop

nginx

4 配置redis

Gitlab自带有redis模块,但是我们有自己的redis,所以需要单独配置redis,如果决定使用Gitlab自带的redis,此步聚可以忽略。

官方配置文档:https://docs.gitlab.com/omnibus/settings/redis.html

#禁用内置redis
redis['enable'] = false

#配置redis
gitlab_rails['redis_host'] = "127.0.0.1"
gitlab_rails['redis_port'] = 6379
gitlab_rails['redis_password'] = "123456"
gitlab_rails['redis_database'] = 0

gitlab_rails['redis_socket'] = '/tmp/redis.sock'

5 配置SMTP邮件服务

这里以微软Outlook邮箱为例,需提前注册好Office365邮箱并找到SMTP信息。

官方配置文档:https://docs.gitlab.com/omnibus/settings/smtp.html#smtp-settings

5.1 配置SMTP

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.office365.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "username@yourdomain.com"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_domain'] = "yourdomain.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_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'username@yourdomain.com'
gitlab_rails['gitlab_email_display_name'] = 'Gitlab'
gitlab_rails['gitlab_email_reply_to'] = 'username@yourdomain.com'

5.2 测试SMTP配置

执行以下命令进入Rails控制台,时间可能会略微有点长,耐心等一会儿

gitlab-rails console

在Rails控制台下执行以下命令,成功后登录邮箱查看结果

Notify.test_email('<你的邮箱地址>', 'Message Subject', 'Message Body').deliver_now

6 配置MySQL

Gitlab内置PostgreSQL,我有自己独立的MySQL数据库,所以偿试配置了一下,但是没有成功,这里不再记录。

官方配置文档:https://docs.gitlab.com/ee/install/database_mysql.html

7 汉化

网上有很多关于汉化的文档,但是本人偿试了很多次,汉化后会有个别地方仍然是英文,而主要问题在于汉化后有部分功能无法使用了,所以就取消了汉化,这里也不再记录汉化过程,不过在本文下方有切换到简体中文的方式。

8 配置Gitlab

  1. 打开上面设置好的域名,需要在域名提供商提前解析;
  2. 设置超级管理员账户密码;
  3. 登录Gitlab,默认用户名为root;
  4. 点击用户头像下方“Settings - Profile - Main settings - Preferred language”,选择简体中文,刷新;
  5. 其它设置,如禁用注册,添加用户组及用户,新建项目等。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值