You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker容器部署GitLab陷入错误循环问题求助

GitLab Docker部署陷入错误循环求助

操作步骤

执行以下Docker命令启动GitLab EE容器:

sudo docker run --detach \
  --hostname gitlab.MY-URL.net \
  --publish 28043:443 --publish 28080:80 --publish 28022:22 \
  --name gitlab \
  --restart always \
  --volume $GITLAB_HOME/config:/etc/gitlab \
  --volume $GITLAB_HOME/logs:/var/log/gitlab \
  --volume $GITLAB_HOME/data:/var/opt/gitlab \
  --shm-size 256m \
  gitlab/gitlab-ee:latest

用以下命令查看日志:

sudo docker logs -f gitlab | tee gitlab.log

初始启动流程正常,但后续出现错误并进入循环,服务持续失败重试。

错误日志详情

非重复错误

DSN未配置

==> /var/log/gitlab/gitlab-rails/production.log <==
Raven 3.1.2 configured not to capture errors: DSN not set
... # 共重复5次

推测与邮件推送相关,暂不影响核心服务。

GitLab Socket连接失败

==> /var/log/gitlab/gitlab-workhorse/current <==
{"correlation_id":"","duration_ms":0,"error":"badgateway: failed to receive response: dial unix /var/opt/gitlab/gitlab-rails/sockets/gitlab.socket: connect: no such file or directory","level":"error","method":"GET","msg":"","time":"2023-08-22T13:54:01Z","uri":""}

该错误连续出现2次,进入容器执行ls确认文件存在,但为套接字文件,疑惑为何启动进程无法正常连接。

Gitaly服务重启

==> /var/log/gitlab/gitaly/current <==
{"level":"info","msg":"Upgrade succeeded","time":"2023-08-22T13:54:23.196Z"}
{"error":"graceful upgrade: completed","level":"error","msg":"Gitaly shutdown","time":"2023-08-22T13:54:23.213Z"}

Postgres Exporter配置缺失

2023-08-22_13:54:30.75614 ts=2023-08-22T13:54:30.756Z caller=main.go:86 level=warn msg="Error loading config" err="Error opening config file \"postgres_exporter.yml\": open postgres_exporter.yml: no such file or directory"

配置路径为相对路径,无法确认文件是否存在于容器内。

Kubernetes服务发现错误

2023-08-22_13:54:28.58747 ts=2023-08-22T13:54:28.587Z caller=manager.go:317 level=error component="discovery manager scrape" msg="Cannot create service discovery" err="unable to load specified CA cert /var/run/secrets/kubernetes.io/serviceaccount/ca.crt: open /var/run/secrets/kubernetes.io/serviceaccount/ca.crt: no such file or directory" type=kubernetes config=kubernetes-nodes

未使用Kubernetes环境,但该错误会以不同type参数重复出现。

重复循环错误

Collector复制模块失败

2023-08-22_13:53:48.88658 ts=2023-08-22T13:53:48.886Z caller=collector.go:190 level=error msg="collector failed" name=replication duration_seconds=0.228480569 err="sql: Scan error on column index 0, name \"pg_postmaster_start_time\": converting driver.Value type time.Time (\"2023-08-22 13:50:44.701812 +0000 GMT\") to a float64: invalid syntax"

推测是类型转换错误,尝试将时间类型转为float64失败。

补充环境信息

  • 环境变量GITLAB_HOME设置为/srv/gitlab
  • MY-URL.net和gitlab.MY-URL.net已解析至私有服务器,通过Cloudflare代理,DNS记录配置完成
  • 端口映射说明:服务器同时运行网站和cloudflared服务,通过端口映射避免冲突,计划通过gitlab.MY-URL.net:28080访问GitLab
  • 每次重试前已删除容器及/srv/gitlab目录
  • 未部署本地邮件服务器,计划使用第三方邮箱服务

已尝试的解决动作

  • 简化端口映射配置,关闭Apache和cloudflared服务(仅保留SSH占用端口22),错误仍存在
  • 访问域名时Cloudflare提示服务器无响应
  • 此前直接在服务器上安装GitLab成功,但Docker部署始终失败

内容的提问来源于stack exchange,提问作者melon_maniac

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 21:07:12