配置 Docker SSH git 访问

配置 Docker SSH git 访问

我有以下设置

运行 GitLab CE docker 实例的 Ubuntu 14.04 Linode。我使用 NGinx 作为所有 Web 流量的反向代理,服务器名称 gitlab.xxx.be 用于访问 Web 界面。

至于与 Web 相关的东西,我配置起来没有问题……但 SSH 是个问题。我如何才能启动并运行 SSH git 访问?

基本上,我需要将 gitlab.xxx.be 的所有 SSH 流量从我的 linode 服务器转发到 docker 实例。如何轻松完成此操作?

谢谢你的帮助...

答案1

基本上,我需要将 gitlab.xxx.be 的所有 SSH 流量从我的 linode 服务器转发到 docker 实例。如何轻松完成此操作?

OpenSSH 服务器守护程序必须在您的 docker 容器上运行。如果使用的 docker 镜像未提供 OpenSSH,则您需要创建一个从该 GitLab 镜像继承的 Dockerfile,使用 SSH 功能对其进行扩展,构建新镜像并运行新容器。

如果你正在使用此图像,则必须包含 OpenSSHhttps://hub.docker.com/r/gitlab/gitlab-ce/~/dockerfile/

生成 SSH 密钥并将公钥放入文件中/var/opt/gitlab/.ssh/authorized_keys(OpenSSH 公钥格式)。

并且在您使端口转发 Nginx -> 在 Docker 上运行的 GitLab Web 界面相同的情况下,您还可以将主机系统中的任何可用端口转发到正在运行的 Docker 容器中的 SSH 端口(虚拟示例:)docker run -d --name appName -p 2222:22 -v gitlab_data gitlab_image

相关内容