#spring #git #ssh #cloud #config
#spring #git #ssh #облако #конфигурация
Вопрос:
Мне нужно подключить spring cloud server к моему частному репозиторию github. Я получаю сообщение об ошибке «Причина: свойство ‘spring.cloud.config.server.git.PrivateKey’ не является допустимым закрытым ключом»
Шаги:
- Сначала я создаю с помощью git bash открытый и закрытый ключи.
- Затем я развертываю открытый ключ в репозитории конфигурации github (куда я помещаю файлы конфигурации == config-repo)
- Наконец-то это мое приложение.yml
spring:
cloud:
config:
server:
git:
uri: git@github.com:[repository]/config-repo.git
searchPaths: '{application}'
hostKey: someHostKey
hostKeyAlgorithm: ssh-rsa
ignoreLocalSshSettings: true
privateKey: |
-----BEGIN RSA PRIVATE KEY-----
[...]
-----END RSA PRIVATE KEY-----
Не могли бы вы помочь мне запустить мой сервер?
Большое спасибо
Комментарии:
1. исправьте эту проблему. Не создавайте ssh-ключ под Windows с помощью git bash. Я должен сгенерировать ssh-ключ в ОС Linux (например, CoreOS). И это сделано: закрытый ключ теперь действителен
2. Вы должны предоставить свой комментарий в качестве вашего решения. У меня также была такая же проблема. Ваш комментарий — это рабочее решение. Тем не менее, я не уверен, почему ssh-ключ, сгенерированный в Windows git bash, не работает.
3. Генерация пары ключей в Linux также сработала для меня
Ответ №1:
Я столкнулся с тем же… Я генерировал свои ключи с помощью Linux ssh-keygen
Я сгенерировал ключи и не более того Причина: свойство ‘spring.cloud.config.server.git.PrivateKey’ не является допустимым закрытым ключом ошибка
Ответ №2:
Вам необходимо сохранить пару ключей в формате PEM. Некоторое время назад это было по умолчанию, но в наши дни вы должны указывать это при вызове ssh-keygen
.
Пример:
ssh-keygen -m PEM -t rsa -b 4096 -C "user@example.com"
Закрытый ключ, который вы получаете, начинается с:
-----BEGIN RSA PRIVATE KEY-----
...
Ответ №3:
У меня была такая же проблема, и я решил свою проблему, добавив ключевую фразу (тот, который используется нами), чтобы решить мою проблему.
spring.cloud.config.server.git.passphrase=yourPassphrase
PS: Я использую .properties вместо .yml.