Gitlab 踩坑指北
使用遇到的问题
Runner 在 web 端日志更新较慢
Gitlab 默认把 ci_enable_live_trace
功能关闭,原因是持续读取磁盘产生大量日志。
解决方法:
终端里输入进入 gitlab rails console
gitlab-rails console
然后输入
Feature.enable('ci_enable_live_trace')
启用实时 update
PS:
Gitlab 的 ci_enable_live_trace
功能开启后,会由前端 fetch 的 json 获取刷新内容,并根据上一次的时间点标记缓存,然后请求至下个时间点的刷新内容, 所以如果离开页面就会丢失 timeline, 不会再刷新内容,直到 job 状态改变
Runner 一次性多个启动,不使用对话注册
解决方法:
进入 docker:
docker exec -it gitlab-runner bash
输入以下命令, 启动多个 runner:
gitlab-ci-multi-runner register \
--non-interactive \
--url
--non-interactive
--url "${your gitlab address}" \
--registration-token "${your gitlab runner register token}"
--executor "docker"
--docker-image debian:bullseye
--description "debian"
--tag-list "docker,debian"
--run-untagged="true"
--locked="false"
--access-level="not_protected"
调试 stmp 邮件问题,检查邮件设置,发送测试邮件
由于我们团队不使用 postfix 发送邮件,如果安装完 gitlab 发送邮件错误的时候,确认本机不使用 postfix 后,再进行卸载:
apt remove postfix
终端里输入进入 gitlab rails console
gitlab-rails console
检查邮件设置
ActionMailer::Base.smtp_settings
发送测试邮件
Notify.test_email('t[email protected]', 'Message Subject', 'Message Body').deliver_now
CI 环境变量持续到下一个 Job
编辑 .yml
...
jobs:
...
artifacts:
...
reports:
dotenv: job.env
参考: