Docker:GitLab + Traefik & 端口22

5
我需要在Traefik后面设置Gitlb。
除了通过命令行验证应用程序外,一切正常 - 我不知道如何通过traefik公开端口22。
有任何想法如何设置它?如何通过traefik公开docker容器的22端口?
我将默认端口从22更改为10022。
我通过netstat -tulpn获取。
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1132/sshd           
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      1126/systemd-resolv 
tcp6       0      0 :::22                   :::*                    LISTEN      1132/sshd           
tcp6       0      0 :::443                  :::*                    LISTEN      1590/docker-proxy   
tcp6       0      0 :::10022                :::*                    LISTEN      1440/docker-proxy   
tcp6       0      0 :::5355                 :::*                    LISTEN      1126/systemd-resolv 
tcp6       0      0 :::80                   :::*                    LISTEN      1602/docker-proxy   
tcp6       0      0 :::8080                 :::*                    LISTEN      1578/docker-proxy   
udp        0      0 127.0.0.53:53           0.0.0.0:*                           1126/systemd-resolv 
udp        0      0 0.0.0.0:68              0.0.0.0:*                           864/dhclient        
udp        0      0 0.0.0.0:5355            0.0.0.0:*                           1126/systemd-resolv 
udp6       0      0 :::5355                 :::*                                1126/systemd-resolv 

我不理解为什么10022连接到docker-proxy。

当我尝试:

git push --set-upstream origin master
ssh: connect to host git.myserver.com port 10022: Connection refused
fatal: Could not read from remote repository.

非常感谢您。

请提供您的 docker run 命令或 docker-compose.yml 文件。 - BMitch
2个回答

4

Traefik是一个HTTP反向代理,而SSH不是HTTP协议。因此,您需要将容器的SSH端口发布到主机上未使用的端口。


那是真的。我将更新问题 - 暴露端口22会给出“端口已分配”,这正如我所预期的。我设置了1022端口.. 请检查上面的问题。 - David

2
正如BMitch所说,如果不是HTTP协议,Traefik将无法处理TCP流量。(SSH不是HTTP)
请参阅此讨论:https://github.com/containous/traefik/issues/10 我建议您配置网络设备以便将:22的流量直接路由到容器。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接