首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

开启GitLab的邮件通知功能以及一些外观配置

编程知识
2024年07月17日 15:22

前言

维护GitLab的同事离职了

刚好又有新实习生需要申请账号

只能我来出手了

其实之前安装了 GitLab 之后一直还是用得比较粗糙的

属于是勉强能用的水平,有些配置都还没改好

这次把邮件功能、域名、外观啥的配置好了,写篇文章记录一下

目录结构

先来回顾一下 GitLab 的目录结构

我们的 GitLab 是使用 docker 部署的

gitlab
├── config
├── data
├── logs
├── shell
└── docker-compose.yml

具体的目录结构也是看具体的配置

本文就以这个目录结构为例,进行具体的配置

配置邮件功能

修改 config/gitlab.rb 文件

话说 GitLab 居然是 ruby 写的?(难怪觉得卡卡的)

编辑邮件配置这一块

这里以腾讯企业邮箱为例

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "gitlab@codelab.com"
gitlab_rails['smtp_password'] = "email-password"
gitlab_rails['smtp_domain'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = false
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_ssl'] = true
gitlab_rails['smtp_pool'] = false
gitlab_rails['gitlab_email_from'] = "gitlab@codelab.com"

保存与加载配置

配置完成保存一下

进入 GitLab 容器

docker compose exec gitlab bash

执行命令

gitlab-ctl reconfigure
gitlab-ctl restart

搞定

额外邮件配置

对了,还有个额外配置可以改一下,我这里就只修改了 gitlab_email_from 其他的有需要的同学可以改一下

### Email Settings

# gitlab_rails['gitlab_email_enabled'] = true

##! If your SMTP server does not like the default 'From: gitlab@gitlab.example.com'
##! can change the 'From' with this setting.
gitlab_rails['gitlab_email_from'] = 'example@example.com'
gitlab_rails['gitlab_email_display_name'] = 'Example'
gitlab_rails['gitlab_email_reply_to'] = 'noreply@example.com'
gitlab_rails['gitlab_email_subject_suffix'] = ''
gitlab_rails['gitlab_email_smime_enabled'] = false
gitlab_rails['gitlab_email_smime_key_file'] = '/etc/gitlab/ssl/gitlab_smime.key'
gitlab_rails['gitlab_email_smime_cert_file'] = '/etc/gitlab/ssl/gitlab_smime.crt'
gitlab_rails['gitlab_email_smime_ca_certs_file'] = '/etc/gitlab/ssl/gitlab_smime_cas.crt'

发送测试邮件

我用的方法是进入 ruby console 手动发送

在 GitLab 实例的前台页面没找到有什么测试发送的地方

首先进入 GitLab 容器的 shell

docker compose exec gitlab bash

之后启动 ruby console

gitlab-rails console

输入命令发邮件

Notify.test_email('your-email@example.com', 'Test Email', 'This is a test email.').deliver_now

这个方法很好,如果有哪里配置错了,也可以从报错信息里直观的看到

几个跟邮件有关的功能

  • 登录到你的 GitLab 实例。
  • 进入 Admin Area(管理员区域)。
  • 导航到 Settings > Integrations

这个页面的中文应该是“实例级集成管理”,我这个版本的 GitLab 有俩跟邮件有关的,分别是:

  • 推送时发送电子邮件
  • 流水线状态电子邮件

顾名思义,前面邮箱配置好了就可以启用这俩

之后满足条件就可以在指定邮箱接收到通知邮件了

重新使用 swag 来分配域名+https

在之前那篇GitLab安装的文章里,我是直接把几个端口都映射出来

现在改成swag做反代,需要修改一下几个地方

例如要分配给 GitLab 的域名是 gitlab.dealiaxy.com

首先修改 docker-compose 配置,把容器加入 swag 网络

version: "3"
services:
  gitlab:
    image: gitlab/gitlab-ee:latest
    restart: always
    hostname: gitlab
    container_name: gitlab
    ports:
      - 9443:443
      - 9022:22
    networks:
      - swag
    volumes:
      - /etc/localtime:/etc/localtime
      - ./config:/etc/gitlab
      - ./logs:/var/log/gitlab
      - ./data:/var/opt/gitlab

networks:
  swag:
    name: swag
    external: true

重启容器

在 swag 里做 GitLab 容器的 80 端口反代

然后 config/gitlab.rb 配置里修改一下

external_url "http://gitlab.dealiaxy.com"

这里使用 HTTP 就好,https 在 swag 那边会配置,如果这里写了 https ,那么会要在 GitLab 里提供证书配置,比较麻烦。

然后 ssh host 也得改一下

gitlab_rails['gitlab_ssh_host'] = gitlab.dealiaxy.com

搞定

外观配置

同样在 Admin Area 里,有个“外观”配置

里面可以修改logo、登录页面的图片、说明(而且还支持markdown)啥的

我稍微改了一下,效果是这样

然后还有 New Project Guidelines 和 Profile Image Guidelines

分别是创建项目和用户修改头像时左侧的引导提示

随便写一点或者用大模型生成就完事了

这样配置下来就有模有样

版本升级

使用 docker-compose pull 命令来拉取最新的镜像后

先 down 然后再 up 就可以使更新生效了~

如果只是 restart 就只会重新启动现有的容器

小结

本文主要还是记录了邮件配置

还有一些比较零散的配置

接下来还要继续完善一下 CICD 流程

到时搞定之后再写文章记录

From:https://www.cnblogs.com/deali/p/18307703
本文地址: http://shuzixingkong.net/article/85
0评论
提交 加载更多评论
其他文章 说说XXLJob分片任务实现原理?
XXL Job 是一个开源的分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展的分布式任务调度框架。 这两天咱们开发的 AI Cloud 项目中,也使用到了 XXL Job 来执行分布式任务的调度,可以看出它的部署和使用虽然步骤很多,但用起来还是很简单的。 因为其本身为 Spri
说说XXLJob分片任务实现原理? 说说XXLJob分片任务实现原理?
(开源)都进来!简单易懂、功能强大的权限+可视化流程管理系统
1、预览地址:http://139.155.137.144:9012 2、qq群:801913255 一、前言 随着网络的发展,企业对于信息系统数据的保密工作愈发重视,不同身份、角色对于数据的访问权限都应该大相径庭。 列如 1、不同登录人员对一个数据列表的可见度是不一样的,如数据列、数据行、数据按钮
(开源)都进来!简单易懂、功能强大的权限+可视化流程管理系统 (开源)都进来!简单易懂、功能强大的权限+可视化流程管理系统 (开源)都进来!简单易懂、功能强大的权限+可视化流程管理系统
表格集算表高性能原理:揭秘纯前端百万行数据秒级响应的魔法
最新技术资源(建议收藏) https://www.grapecity.com.cn/resources/ 集算表 (Table Sheet)是一个具备高性能渲染、数据绑定功能、公式计算能力的数据表格,通过全新构建的关系型数据管理器结合结构化公式,在高性能表格的基础上提供排序、筛选、样式、行列冻结、自
表格集算表高性能原理:揭秘纯前端百万行数据秒级响应的魔法 表格集算表高性能原理:揭秘纯前端百万行数据秒级响应的魔法 表格集算表高性能原理:揭秘纯前端百万行数据秒级响应的魔法
Netcode for Entities如何添加自定义序列化,让GhostField支持任意类型?以int3为例(1.2.3版本)
一句话省流:很麻烦也很抽象,能用内置支持的类型就尽量用。 首先看文档。官方文档里一开头就列出了所有内置的支持的类型:Ghost Type Templates 其中Entity类型需要特别注意一下:在同步这个类型的时候,如果是刚刚Instantiate的Ghost(也就是GhostId尚未生效,上一篇
解码 xsync 的 map 实现
解码 xsync 的 map 实现 最近在寻找 Go 的并发 map 库的时候,翻到一个 github 宝藏库,xsync (https://github.com/puzpuzpuz/xsync) 。这个库提供了一些支持并发的数据结构,计数器Counter,哈希 Map,队列Queue。我着重看了下
解码 xsync 的 map 实现 解码 xsync 的 map 实现 解码 xsync 的 map 实现
为视觉语言多模态模型进行偏好优化
为视觉语言多模态模型进行偏好优化 训练模型使得它能够理解并预测人类偏好是一项比较复杂的任务。诸如 SFT (Supervised finetuning) 的传统的方法一般都需要耗费较大成本,因为这些算法需要对数据打上特定的标签。而偏好优化 (Preference Optimization) 作为一种
为视觉语言多模态模型进行偏好优化 为视觉语言多模态模型进行偏好优化 为视觉语言多模态模型进行偏好优化
设计模式-C#实现简单工厂模式
前言 上一篇文章写了如何使用RabbitMQ做个简单的发送邮件项目,然后评论也是比较多,也是准备去学习一下如何确保RabbitMQ的消息可靠性,但是由于时间原因,先来说说设计模式中的简单工厂模式吧! 在了解简单工厂模式之前,我们要知道C#是一款面向对象的高级程序语言。它有3大特性,封装、继承、多态。
设计模式-C#实现简单工厂模式
Doris failed to initialize storage reader. tablet=106408, res=[NOT_IMPLEMENTED_ERROR]to be implemented
Apache Doris 2.3 以下的版本会存在一个 bug,导致数据在合并时存在异常,在后续查询该字段数据时会提示 [1105] [HY000]: errCode = 2, detailMessage = (192.168.15.228)[CANCELLED]failed to initiali
Doris failed to initialize storage reader. tablet=106408, res=[NOT_IMPLEMENTED_ERROR]to be implemented