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

Docker容器部署GitLab后本地无法访问的问题求助

GitLab Docker容器无法访问问题排查

核心问题1:端口映射配置错误

你的docker-compose.yml里的端口映射存在致命错误:

ports:
    - '80:20'  # 错误:主机80端口映射到容器20端口,但GitLab容器默认HTTP服务运行在80端口

GitLab官方镜像的HTTP服务默认监听容器内的80端口,当前配置把主机端口映射到了容器的20端口(该端口容器内无服务运行),直接导致访问时无响应。

修正后的端口映射应为:

ports:
    - '80:80'  # 主机80端口映射到容器80端口(HTTP服务)
    - '443:443'
    - '22:22'
    - '587:587'

核心问题2:容器未完成启动

从docker ps输出可见,新启动的gitlab-server容器状态为Up 9 seconds (health: starting)。GitLab属于重型应用,首次启动需加载配置、初始化数据库等操作,通常需要10-30分钟才能完成启动并进入healthy状态,在此阶段访问必然会出现无响应。

额外问题:冗余容器占用资源

docker ps中还有一个运行中的sleepy_payne容器(同GitLab镜像),虽处于healthy状态但未映射端口,无法访问。建议停止并删除该冗余容器,避免资源浪费:

docker stop sleepy_payne && docker rm sleepy_payne

后续操作步骤

  1. 停止当前运行的gitlab-server容器:
    docker-compose down
    
  2. 修改docker-compose.yml中的端口映射,将80:20改为80:80
  3. 重新启动容器:
    docker-compose up -d
    
  4. 等待15-30分钟,通过docker ps确认容器状态变为healthy后,访问http://localhost(或主机IP)即可

SMTP配置补充说明

当前SMTP配置中smtp_address设为localhost存在问题:容器内的localhost指向容器自身,若你的SMTP服务运行在主机或外部服务器,需替换为对应IP地址。该问题仅影响邮件功能,不阻碍Web服务访问,可在Web服务正常后单独调试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 14:33:00