Gitlab部署管理

一、安装

1.docker安装gitlab
shell 复制代码
sudo docker run -d \
  -p 6080:80 -p 6022:22 \
  --name gitlab \
  --restart always \
  -v /srv/gitlab/config:/etc/gitlab \
  -v /srv/gitlab/logs:/var/log/gitlab \
  -v /srv/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest
2.存储说明
  • 存储应用数据:/srv/gitlab/data -> /var/opt/gitlab
  • 存储日志数据:/srv/gitlab/logs -> /var/log/gitlab
  • 存储 gitlab 配置文件:/srv/gitlab/config -> /etc/gitlab
3.Gitlab 配置
shell 复制代码
docker exec -it gitlab /bin/bash
vi /etc/gitlab/gitlab.rb
docker restart gitlab

# 初始root密码在登录时不能手动设置,查看日志,输出在文件
# cat /etc/gitlab/initial_root_password
4.配置邮件
shell 复制代码
# gitlab/config/gitlab.rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "gitlab@jsdfycwlkjyxg.wecom.work"
gitlab_rails['smtp_password'] = "EfiSJYPexHjVYE2S"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_pool'] = false

docker exec -it gitlab /bin/bash
gitlab-ctl reconfigure
gitlab-ctl restart

gitlab-rails console
Notify.test_email('xxx@qq.com','gitlab邮箱通知测试','这是正文内容').deliver_now
遇到openSSL报错

启用如下配置

shell 复制代码
gitlab_rails['smtp_openssl_verify_mode'] = 'none'                                          
                        
gitlab_rails['smtp_ca_path'] = "/etc/ssl/certs"                                            
gitlab_rails['smtp_ca_file'] = "/etc/ssl/certs/ca-certificates.crt"
报错From必须与user一致
shell 复制代码
gitlab_rails['gitlab_email_from'] = 'gitlab@jsdfycwlkjyxg.wecom.work'              
gitlab_rails['gitlab_email_display_name'] = 'Gitlab'
邮件域名不对
shell 复制代码
external_url 'https://git.xxx.com'

注意:设置external_url后,gitlab将自动将nginx开放到对应端口,https对应443,http对应80,需注意docker容器的端口映射。

相关推荐
hl040618 小时前
GitLab CI + Docker 自动构建前端项目并部署 — 完整流程文档
ci/cd·docker·gitlab
先天打工圣体的男人18 小时前
Linux环境gitlab多种部署方式及具体使用
运维·git·gitlab
委婉待续1 天前
基于linux环境在centos7上部署gitlab
gitlab
疯狂吧小飞牛5 天前
基于ubuntu搭建gitlab
linux·ubuntu·gitlab
__Smile°7 天前
Gitlab+Jenkins+K8S+Registry 建立 CI/CD 流水线
linux·ci/cd·docker·kubernetes·gitlab·jenkins
某某7 天前
gitlab启动失败,如何解决
gitlab
yangrenrui7 天前
GitLab:一站式 DevOps 平台的全方位解析
运维·gitlab·devops
流泪兔兔头8 天前
GitLab 同时拣选多个分支
gitlab
hi_link9 天前
idea添加gitlab访问令牌
gitlab