Docker 装的 GitLab 如何与宿主机共用 22 端口?

2019-07-15 00:39:34 +08:00
twoyuan  twoyuan
升级了 Debian 10,迫于还没有支持的源用了 Docker 版的 GitLab (官方源)。

由于宿主机使用了 22 端口容器里的 GitLab 就没办法使用,实在不想换个非 22 端口让每个 repo 的地址都指定端口,求教有没有类似反代 HTTP 的方式反代 SSH 的部分连接到容器?
8947 次点击
所在节点   Docker  Docker
14 条回复
privil
privil
2019-07-15 00:40:28 +08:00
换掉宿主机的 22 端口完事了 = =
kyuuseiryuu
kyuuseiryuu
2019-07-15 01:13:05 +08:00
ip table 搞转发不知道行不行。感觉也挺麻烦的样子。
Sendya
Sendya
2019-07-15 01:50:09 +08:00
我用的 10022,其实很多时候也不会手撸地址,都是在网页上点 Copy SSH clone Url
Sendya
Sendya
2019-07-15 01:51:06 +08:00
不过也可以把宿主机的 22 换掉,让 gitlab 用 22,而且大部分时候,推荐宿主机 ssh 端口不要用默认 22
orzfly
orzfly
2019-07-15 02:09:18 +08:00
ETiV
ETiV
2019-07-15 03:44:48 +08:00
看你架设在哪儿

比如 gitlab 跑在阿里云里面的话,弄个公网 SLB,tcp 22 到宿主机上 docker 映射出来的端口即可
fuwu1245
fuwu1245
2019-07-15 06:24:22 +08:00
AngryPanda
AngryPanda
2019-07-15 06:58:23 +08:00
宿主机多分配一个 IP 可解
neroxps
neroxps
2019-07-15 08:46:38 +08:00
一个 ip 只能一个 22 端口,一个端口只能一个程序占用,除非使用转发之类的能根据某些东西来区分流量,但这个更麻烦。1 楼和 8 楼说的对。要么换宿主 ssh 端口,要么加 IP。GitLab 监听新的 ip,或者修改 ssh 监听新的 ip 而不是 0.0.0.0
UnixCRoot
UnixCRoot
2019-07-15 08:52:15 +08:00
端口复用?但是好像得写个程序路由 22 分发到宿主机和虚拟机。
werty
werty
2019-07-15 09:01:49 +08:00
修改 gitlab.yml 配置, 里面有端口监听, 然后重新载入一下就行了
twoyuan
twoyuan
2019-07-15 09:18:14 +08:00
@orzfly #5 这个应该算是个 hack,靠在 authorized_keys 里指向的同样路径下创建一个脚本来做转发,我也搜到了这个不过试了下最新版 GitLab CE 上没能成功
xenme
xenme
2019-07-15 09:18:49 +08:00
独立 IP 可解。
aogg
aogg
2019-12-11 16:17:46 +08:00
有没尝试用 nginx 转发 22 端口的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/582944

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX