2015-03-06 8 views
0

Я смотрел разные сообщения о проблемах с gitlab, docker и ssh без какой-либо помощи. Итак, я задаю свой вопрос здесь.gitlab docker ssh issue

У меня есть следующие настройки:

  • системы Linux с Ubuntu Server 14.04 и IP 192.168.1.104
  • DNS: git.mydomain.com = 192.168.1.104
  • gitlab Docker, что я начать, в соответствии с official doc, таким образом:

    sudo docker run --detach --name gitlab_app --publish 8080:80 --publish 2222:22 --volumes-from gitlab_data gitlab_image 
    

    или

    sudo docker run --detach --name gitlab_app --publish 8080:80 --publish 2222:22 -e "GITLAB_SHELL_SSH_PORT=2222" --volumes-from gitlab_data gitlab_image 
    
  • коробок Linux запускает Nginx, который перенаправляет (proxy_pass) git.mydomain.com к 192.168.1.104:8080

  • Я доступ git.mydomain.com без какого-либо вопроса, все работает.

  • Я сгенерировал ключ SSH, который я добавил в мой профиль на gitlab и добавил следующие строки в моем ~/.ssh/конфигурации

    Host git.mydomain.com 
    User git 
    Port 2222 
    IdentityFile /home/user/.ssh/id_rsa 
    
  • Если я пытаюсь

    ssh -p 2222 [email protected] 
    

    соединение закрыто. Я предполагаю, что это потому, что разрешена только оболочка git.

  • Но, если я пытаюсь

    mkdir test 
    cd test 
    git init 
    touch README.md 
    git add README.md 
    git commit -m "first commit" 
    git remote add origin [email protected]:user/test.git 
    git push -u origin master 
    

    Это заклинивание с

    Connection closed by 192.168.1.104 
    fatal: Could not read from remote repository. 
    
    Please make sure you have the correct access rights 
    and the repository exists. 
    

Я также попытался с

git remote add origin [email protected]:2222/user/ 

и результат был тот же. Обратите внимание, что журналы gitlab докер включают

[2015-03-06T11:04:43+00:00] INFO: group[git] created 
    [2015-03-06T11:04:43+00:00] INFO: user[git] created 
    [2015-03-06T11:04:44+00:00] INFO: group[gitlab-www] created 
    [2015-03-06T11:04:44+00:00] INFO: user[gitlab-www] created 

Любая идея, как я могу решить эту проблему?

Заранее за вашу помощь.

+0

Вы создали проект 'test' на gitlab через веб-интерфейс? – lsowen

+0

Да, проект создан через веб-интерфейс. – radar

ответ

0

Я бы предположил, что у вас есть проблема с аутентификацией .

Вот несколько вещей, которые вы можете попробовать:

  • Убедитесь, что вы добавили вас открытый ключ в gitlab.
  • Проверьте права доступа к файлу id_rsa.
  • Попробуйте временно отключить проверку хостов с

    StrictHostKeyChecking no 
    UserKnownHostsFile /dev/null 
    

Я имею такую ​​же установку, что и вы (докер контейнер в VM, точки DNS для VM). Я также настроил .ssh/config как вы.

Но когда я вхожу в с SSH я получаю:

ssh -p 2222 [email protected] 
PTY allocation request failed on channel 0 
Welcome to GitLab, tomzo! 
Connection to gitlab closed. 

Git пультов ДУ не нужен порт 2222, сконфигурированный. Это нормально (работает для меня):

$ git remote -v 
origin [email protected]:lab/workflow.git (fetch) 
origin [email protected]:lab/workflow.git (push) 

И я могу нажать и потянуть с git.

$ git push 
Everything up-to-date