Я создал дроплет на цифровом океане с изображением убунту и докку. Я следовал этому руководству по развертыванию своего приложения. также выполнил настройку, чтобы добавить мой ключ ssh в dokku. Теперь, когда я пытаюсь «git push [name] master», меня просят ввести пароль «dokku@domain».
Dokku запрашивает пароль при попытке git push
Ответы (6)
У меня тоже была эта проблема, потому что я работаю с нескольких компьютеров, поэтому, хотя я загрузил оба открытых ssh-ключа в цифровой океан до создания дроплета, когда я пошел в систему, я мог сделать это на обеих машинах, если я вошел в систему как пользователь ' корень',
однако, когда я впервые пошел нажимать, используя
$ git remote add dokku [email protected]
$ git push dokku
как в цифровом путеводителе по океану, за которым я следил.
Я обнаружил, что у пользователя «dokku» в файле авторизованных ключей загружен только один ключ.
так вот что я сделал. В моем терминале я использовал $ cat ~/.ssh/id_rsa.pub
, который будет отображать ваш открытый ключ ssh, я выделил все это и скопировал.
Я вошел на свой сервер как пользователь root $ ssh [email protected]
, а затем перешел в папку с авторизованными ключами пользователей dokku $ cd /home/dokku/.ssh/
Затем я открываю этот $ nano authorized_keys
, теперь в этом файле у меня уже был один ключ, но у вас его может не быть. В любом случае я вставил свой ssh-ключ в этот файл и вышел из файла.
Оттуда я был в значительной степени хорош теперь, если я нажму, используя пользователя dokku, он не запрашивает пароль, потому что он уже распознает мой ssh-ключ. Кстати, есть способ упростить все это до двух шагов, но иногда мне нравится делать это долго, просто чтобы убедиться, что ключ действительно попал в файл.
Попробуйте добавить свой локальный ключ SSH в панель управления DigitalOcean, затем удалите старую каплю и создайте новую, используя этот ключ. Теперь, когда вы открываете IP-адрес дроплета в браузере, вы должны увидеть страницу настройки Dokku с вашим ключом, после завершения настройки git push должен работать.
Убедитесь, что вы добавили пульт DigitalOcean Dokku на ЛОКАЛЬНЫЙ компьютер. Если вы попытаетесь добавить его в дроплет DO (да, я сделал эту глупую ошибку), вас попросят ввести пароль.
У меня такая же проблема. Я использовал этот руководство по цифровому океану
Я пользователь виндовс 8. Я обнаружил, что у меня было две ошибки:
Поэтому я использовал puTTy в соответствии с руководством для создания открытых и закрытых ключей SSH. Несмотря на это, я обнаружил, что мой открытый ключ (id_rsa.pub) неверен, когда я открыл Ruby on Rails с помощью командной строки. Вы можете изменить его, используя git bash (позволяет пользователям Windows использовать терминал linux), отредактировав файл с помощью текстового редактора (я предпочитаю использовать vi ... команды здесь)
Следуя руководству по SSH для Windows, вам не предлагается изменить файл sshd_config (ссылка на это руководство здесь). Это «Шаг шестой — блокировка корневого доступа SSH только к ключам». Еще раз используйте gitbash для редактирования файла sshd_config через текстовый редактор по вашему выбору, чтобы убедиться, что он имеет следующую конфигурацию:
PermitRootLogin without-password
Это решило это для меня. Надеюсь, это поможет вам, ребята.
Это случилось со мной. Причина заключалась в том, что мой ключ .ssh/id_rsa.pub не совпадал с тем, который я использовал при настройке Dokku.
Я исправил это следующим образом: создал новый файл ключа на сервере Dokku, вставил туда свой собственный SSH-ключ, а затем запустил: sudo dokku ssh-keys:add my_key_name /home/$USER/.ssh/my_key.pub
Это добавит ваш ключ в файл ключа аутентификации Dokku из файла по указанному пути.
Это команда для всех шагов, описанных @mkrinblk выше:
$>
cat ~/.ssh/id_rsa.pub | ssh [email protected] "sudo sshcommand acl-add dokku [description]"