gitlab远程仓库安装

123 阅读4分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第4天,点击查看活动详情

1.gitlab简介

  • gitlab是一个开源仓库,社区版ce,企业版ee

  • github创建私有仓库收费,网络较差

  • 码云---收费,创建私有仓库最多5个人协同开发

  • 公司一般选择gitlab,个人开源项目GitHub gitee

2.安装gitlab

2.1.安装gitlab

1.安装gitlab
[root@192.168.146.112~]# yum -y install curl policycoreutils-python openssh-server postfix
[root@192.168.146.112~]# yum -y localinstall gitlab-ce-12.0.3-ce.0.el7.x86_64.rpm

2.启动
192.168.146.112~]# systemctl start postfix
[root@192.168.146.112~]# systemctl enable postfix

2.2.配置gitlab

2.2.1.配置域名和关闭prometheus组件

[root@192.168.146.112~]# vim /etc/gitlab/gitlab.rb
external_url 'http://gitlab.wangzx.com'
prometheus['enable'] = flase
prometheus_monitoring['enable'] = flase

2.2.2.配置邮箱

  1. 获取qq邮箱授权码

进入qq邮箱--设置---账号----pop3---开启服务----发送短信

图片.png

图片.png

  1. 生成授权码即可(nepcisloczscfjcf)

图片.png

[root@192.168.146.112~]# vim /etc/gitlab/gitlab.rb
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = '1279087939@qq.com'
gitlab_rails['gitlab_email_display_name'] = 'Gitlab_Example'

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "1279087939@qq.com"
gitlab_rails['smtp_password'] = "nepcisloczscfjcf"     #授权码
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

#如果修改配置文件,修改完则重启生效:gitlab-ctl reconfigure

2.3.初始化gitlab

[root@192.168.146.112~]# gitlab-ctl reconfigure   ----过程下图
[root@192.168.146.112~]# gitlab-ctl status
run: alertmanager: (pid 8132) 21s; run: log: (pid 7933) 60s
run: gitaly: (pid 6514) 563s; run: log: (pid 6429) 595s
run: gitlab-monitor: (pid 8097) 23s; run: log: (pid 7824) 76s
run: gitlab-workhorse: (pid 8079) 24s; run: log: (pid 7598) 94s
run: grafana: (pid 8181) 13s; run: log: (pid 8085) 24s
run: logrotate: (pid 7751) 84s; run: log: (pid 7785) 83s
run: nginx: (pid 7685) 91s; run: log: (pid 7714) 88s
run: node-exporter: (pid 8088) 23s; run: log: (pid 7811) 77s
run: postgres-exporter: (pid 8158) 21s; run: log: (pid 7972) 54s
run: postgresql: (pid 6513) 563s; run: log: (pid 6447) 591s
run: prometheus: (pid 8114) 22s; run: log: (pid 7884) 66s
run: redis: (pid 6281) 600s; run: log: (pid 6291) 599s
run: redis-exporter: (pid 8106) 23s; run: log: (pid 7856) 70s
run: sidekiq: (pid 7552) 103s; run: log: (pid 7568) 100s
run: unicorn: (pid 7521) 109s; run: log: (pid 7548) 106s


###########补充知识点
gitlab-ctl start #启动全部服务
gitlab-ctl restart#重启全部服务
gitlab-ctl stop #停止全部服务
gitlab-ctl restart nginx #重启单个服务,如重启nginx
gitlab-ctl status #查看服务状态
gitlab-ctl reconfigure #使配置文件生效
gitlab-ctl show-config #验证配置文件
gitlab-ctl uninstall #删除gitlab(保留数据)
gitlab-ctl cleanse #删除所有数据,从新开始
gitlab-ctl tail <service name>查看服务的日志
gitlab-ctl tail nginx  #如查看gitlab下nginx日志
gitlab-rails console  #进入控制台


####gitlab常用组件
nginx:静态Web服务器
gitlab-shell:用于处理Git命令和修改authorized keys列表,gitlab是以Git为底层的,操作实际上最后就是调用gitlab-shell命令进行处理。
gitlab-workhorse:轻量级的反向代理服务器
logrotate:日志文件管理工具
postgresql:数据库
redis:缓存数据库
sidekiq:用于在后台执行队列任务(异步执行)
unicorn:GitLab Rails应用是托管在这个服务器上面的



#####gitlab安装目录
以下是gitlab常用的默认安装目录
gitlab组件日志路径:/var/log/gitlab
gitlab配置路径:/etc/gitlab/  路径下有gitlab.rb配置文件
应用代码和组件依赖程序:/opt/gitlab
各个组件存储路径: /var/opt/gitlab/
仓库默认存储路径   /var/opt/gitlab/git-data/repositories
版本文件备份路径:/var/opt/gitlab/backups/
nginx安装路径:/var/opt/gitlab/nginx/
redis安装路径:/var/opt/gitlab/redis

图片.png

2.4.访问gitlab

在本地window主机配置hosts解析
C:\Windows\System32\drivers\etc\hosts
增加192.168.146.112 gitlab.wangzx.com

浏览器访问http://gitlab.wangzx.com
第一次访问会让设置一个密码,这里我们设置的密码是admin123

图片.png

账号root/admin123

图片.png

图片.png 如果我们创建用户收不到邮件

1.开启QQ的邮箱POP3/SMTP服务并保存好授权码

2.修改gitlab的主配置文件:/etc/gitlab/gitlab.rb,修改

gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = '1279087939@qq.com'
gitlab_rails['gitlab_email_display_name'] = 'Gitlab_Example'

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "1279087939@qq.com"
gitlab_rails['smtp_password'] = "nepcisloczscfjcf"     #授权码
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

修改,我们重启生效:gitlab-ctl reconfigure

3.测试配置是否成功:

执行gitlab-rails console进入控制台,然后在控制台提示符后输入下面的命令,发送一封测试邮件:

Notify.test_email('收件人邮箱', '邮件标题', '邮件正文').deliver_now

图片.png 测试成功,添加gitlab用户又可以收到邮件了!