У меня следующая установка
Ubuntu 14.04 Linode с экземпляром докера GitLab CE. Я использую NGinx как обратный прокси для всего веб-трафика, имя сервера gitlab.xxx.be используется для доступа к веб-интерфейсу.
Что касается веб-вещей, у меня нет проблем с настройкой ... но SSH - проблема. Как я могу получить доступ к SSH git?
В основном мне нужно перенаправить весь трафик SSH для gitlab.xxx.be с моего сервера linode на экземпляр докера. Как это легко сделать?
Спасибо за помощь ...
В основном мне нужно перенаправить весь трафик SSH для gitlab.xxx.be с моего сервера linode на экземпляр докера. Как это легко сделать?
В вашем докер-контейнере должен быть запущен демон сервера OpenSSH. Если используемый образ докера не подготавливает OpenSSH, вам необходимо создать файл Dockerfile, наследующий от этого образа GitLab, расширить его с помощью возможностей SSH, создать новый образ и запустить новый контейнер.
Если вы используете этот образ, OpenSSH должен быть включен https://hub.docker.com/r/gitlab/gitlab-ce/~/dockerfile/
Сгенерируйте ключ SSH и поместите открытый ключ в файл /var/opt/gitlab/.ssh/authorized_keys
(Формат открытого ключа OpenSSH).
И так же, как вы сделали переадресацию портов Nginx -> GitLab Web-интерфейс, работающий на Docker, вы также можете перенаправить любой доступный порт из хост-системы на порт SSH в работающем контейнере докера (фиктивный пример: docker run -d --name appName -p 2222:22 -v gitlab_data gitlab_image
).