因为Docker 部署时,我们一般都会映射端口,防止与服务器的端口冲突或占用。Gitlab默认的 SSH 是22
端口,如果我们做了端口映射,但是不修改 Gitlab 的SSH 连接端口,会导致权限验证失败变成需要输入密码才能连接。
查看 Gitlab 映射的22端口
1 | # docker ps -a |
我这里映射的是 2223
端口
修改 Gitlab 的ssh连接端口
打开 Gitlab 的 gitlab.rb
配置文件。 通过搜索查看 gitlab_shell_ssh_port
配置。
如果有则修改,没有则新增即可。
1 | # 修改SSH 连接端口为映射端口 |
重启&测试
重启Gitlab,进入您项目地址,会发现ssh方式的地址都会有端口号。
如 ssh://git@192.168.0.197:2223/xxx/xxxx.git
,然后本地测试 git clone ssh://git@192.168.0.197:2223/xxx/xxxx.git
这时候就可以看到不需要密码了。