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容器的端口映射。

相关推荐
colinu19 小时前
Create gitlab-runner
gitlab
master3362 天前
GitLab 10.x → 19.5.x 升级路线图
gitlab
长不大的杨瑞杰2 天前
OpenCode v2 GitLab 集成实战:Issue 驱动开发、MR 审查与 CI/CD 最小权限
人工智能·ci/cd·gitlab·ai编程·opencode
极小狐8 天前
极狐GitLab万人并发架构实践,大规模组织的扩容路线图
架构·gitlab·极狐gitlab
Lvan的前端笔记9 天前
GitLab CI 环境变量整理
ci/cd·gitlab
李迟10 天前
CICD实例:解决GitLab Runner无法执行CICD问题
gitlab
hanjq_code12 天前
gitlab本地文件 跨分支 忽略改动 不提交
gitlab
极小狐12 天前
极狐GitLab集群高可用方案,多节点架构与故障自愈实践
架构·gitlab·高可用·极狐gitlab
极小狐13 天前
极狐GitLab主备同步延迟治理,复制滞后监控与优化方法
gitlab·极狐gitlab·geo容灾
极小狐13 天前
跨项目流水线报 404 Not Found?CI_JOB_TOKEN 允许名单 9 步排查
ci/cd·gitlab·devops·权限管理·流水线·极狐gitlab·作业令牌