今天撸完代码, 提交后发现流水线没有正常执行, 点开详情后确认是runner阻塞, 随后打开runner管理菜单发现runner均已离线;

确认问题所在:

去控制台看了下runner的运行状态, 服务是正常运行的。

  1. [root@savathun ~]$:gitlab-runner status
  2. Runtime platform arch=amd64 os=linux pid=752791 revision=febb2a09 version=15.0.0
  3. gitlab-runner: Service is running

这应该不是服务的问题, 再去网页端看看离线时间, 显示为3天前, 3天前我干了什么?修改了gitlab服务的域名!
使用前台方式启动runner看下

[root@savathun ~]$:/usr/bin/gitlab-runner run --working-directory /home/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner
Runtime platform                                    arch=amd64 os=linux pid=750820 revision=febb2a09 version=15.0.0
Starting multi-runner from /etc/gitlab-runner/config.toml...  builds=0
Running in system-mode.                            

Configuration loaded                                builds=0
listen_address not defined, metrics & debug endpoints disabled  builds=0
[session_server].listen_address not defined, session endpoints disabled  builds=0
WARNING: Checking for jobs... failed                runner=AYsr5sGC status=405 Not Allowed
WARNING: Checking for jobs... failed                runner=15EBxzy7 status=405 Not Allowed

这里提示405拒绝访问, 这可能是因为网络问题造成的, 但网页端各项功能正常;那八成就是配置文件的问题了!

解决问题

前往runner的配置文件中修改url地址, 使其与gitlab服务域名一致, 随后启动服务, 问题顺利解决。
配置文件默认地址:/etc/gitlab-runner/config.toml, 也可通过ps aux|grep gitlab-runner命令查看