开启掘金成长之旅!这是我参与「掘金日新计划 · 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.配置邮箱
- 获取qq邮箱授权码
进入qq邮箱--设置---账号----pop3---开启服务----发送短信
- 生成授权码即可(nepcisloczscfjcf)
[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
2.4.访问gitlab
在本地window主机配置hosts解析
C:\Windows\System32\drivers\etc\hosts
增加192.168.146.112 gitlab.wangzx.com
浏览器访问http://gitlab.wangzx.com
第一次访问会让设置一个密码,这里我们设置的密码是admin123
账号root/admin123
如果我们创建用户收不到邮件
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
测试成功,添加gitlab用户又可以收到邮件了!