twoyuan
V2EX  ›  Docker

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

  •  
  •   twoyuan ·
    twiceyuan · Jul 15, 2019 · 10133 views
    This topic created in 2670 days ago, the information mentioned may be changed or developed.
    升级了 Debian 10,迫于还没有支持的源用了 Docker 版的 GitLab (官方源)。

    由于宿主机使用了 22 端口容器里的 GitLab 就没办法使用,实在不想换个非 22 端口让每个 repo 的地址都指定端口,求教有没有类似反代 HTTP 的方式反代 SSH 的部分连接到容器?
    14 replies  •  2019-12-11 16:17:46 +08:00
    privil
    privil
    Jul 15, 2019
    1
    换掉宿主机的 22 端口完事了 = =
    Chemist
    Chemist
    Jul 15, 2019 via iPhone
    2
    ip table 搞转发不知道行不行。感觉也挺麻烦的样子。
    Sendya
    Sendya
    Jul 15, 2019 via Android
    3
    我用的 10022,其实很多时候也不会手撸地址,都是在网页上点 Copy SSH clone Url
    Sendya
    Sendya
    Jul 15, 2019 via Android
    4
    不过也可以把宿主机的 22 换掉,让 gitlab 用 22,而且大部分时候,推荐宿主机 ssh 端口不要用默认 22
    ETiV
    ETiV
    Jul 15, 2019 via iPhone
    6
    看你架设在哪儿

    比如 gitlab 跑在阿里云里面的话,弄个公网 SLB,tcp 22 到宿主机上 docker 映射出来的端口即可
    fuwu1245
    fuwu1245
    Jul 15, 2019 via iPhone
    7
    AngryPanda
    AngryPanda
    Jul 15, 2019 via Android❤️1
    8
    宿主机多分配一个 IP 可解
    neroxps
    neroxps
    Jul 15, 2019
    9
    一个 ip 只能一个 22 端口,一个端口只能一个程序占用,除非使用转发之类的能根据某些东西来区分流量,但这个更麻烦。1 楼和 8 楼说的对。要么换宿主 ssh 端口,要么加 IP。GitLab 监听新的 ip,或者修改 ssh 监听新的 ip 而不是 0.0.0.0
    UnixCRoot
    UnixCRoot
    Jul 15, 2019 via Android
    10
    端口复用?但是好像得写个程序路由 22 分发到宿主机和虚拟机。
    werty
    werty
    Jul 15, 2019
    11
    修改 gitlab.yml 配置, 里面有端口监听, 然后重新载入一下就行了
    twoyuan
    twoyuan
    OP
    Jul 15, 2019
    12
    @orzfly #5 这个应该算是个 hack,靠在 authorized_keys 里指向的同样路径下创建一个脚本来做转发,我也搜到了这个不过试了下最新版 GitLab CE 上没能成功
    xenme
    xenme
    Jul 15, 2019 via iPhone
    13
    独立 IP 可解。
    aogg
    aogg
    Dec 11, 2019
    14
    有没尝试用 nginx 转发 22 端口的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4998 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 03:46 · PVG 11:46 · LAX 19:46 · JFK 22:46
    ♥ Do have faith in what you're doing.