【问题标题】:Unable to clone repository from gitlab (docker behind traefik reverse proxy)无法从 gitlab 克隆存储库(traefik 反向代理后面的 docker)
【发布时间】:2020-08-19 07:13:35
【问题描述】:

最近我在 traefik revers 代理容器后面用 gitlab 构建了一个 docker 容器。我很容易通过 https 登录。但是当我尝试使用 intellij(或 git bash)克隆存储库时,我得到了错误

ssh: connect to host git.domain.de port 22: Connection refused
fatal: Could not read from remote repository.

docker-compose 文件设置端口:

ports:
  - 80
  - 22:22

Traefik 只是监听 80 和 443 端口。

那么有谁知道是什么导致了这个问题或如何跟踪它?为什么我可以登录 Web UI 但无法克隆任何存储库?日志不提供任何拒绝连接或错误的信息。但如果有帮助,我可以在这里上传一些日志。

【问题讨论】:

    标签: docker-compose gitlab reverse-proxy traefik connection-refused


    【解决方案1】:

    那么有人知道是什么导致了这个问题或如何跟踪它吗?

    您的网络配置有问题。您的 git 客户端无法访问您在 22 端口上安装的 gitlab。

    为什么我可以登录 Web UI 但无法克隆任何存储库? 因为您的 Web UI 使用 80/443 端口,但您使用 22 端口来克隆您的 git 客户端。

    如果你不介意通过 https 进行克隆,并且 gitlab 支持它,你可以尝试一下。如果您想通过 SSH 进行克隆,您需要对端口 22 连接进行故障排除。根据您的网络配置,它可能在任何地方。

    以下是您可能想尝试的一些事情:

    • 确保 gitlab 在 22 日监听
    • 确保您可以从 gitlab docker 容器内部连接到端口 22 上的 gitlab
    • 确保您可以从 docker 容器外部的 docker 主机连接到端口 22 上的 gitlab
    • 确保您可以从运行 git 客户端的同一台机器上的 22 端口连接到 gitlab

    显然其中一个会失败。出现这种情况时,您必须找出原因并解决问题。

    【讨论】:

    • 谢谢,有帮助。我没有将容器端口发布到主机。我不得不在 compose.yml 文件中使用 "。就像从 22:22 到 "22:22"。非常感谢
    猜你喜欢
    • 2019-12-02
    • 1970-01-01
    • 1970-01-01
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    • 2021-08-09
    • 1970-01-01
    • 2022-11-10
    相关资源
    最近更新 更多