Сборка контейнера Docker с доступом git ssh, ключ загрузки "/root/.ssh/id_rsa": неверный формат - PullRequest
1 голос
/ 07 октября 2019

Народ, После нескольких потоков о том, как добавить ssh-ключи в Docker-контейнер для фазы сборки приложения, я получаю интересную ошибку:

Load key "/root/.ssh/id_rsa": invalid format

Мой Dockerfile:

RUN mkdir /root/.ssh/
ADD serviceBitbucketKey.ssh /root/.ssh/id_rsa
RUN chmod 400 /root/.ssh/id_rsa

RUN touch /root/.ssh/`known_hosts
RUN ssh-keyscan bitbucket.org >> /root/.ssh/known_hosts
RUN git ls-remote git@bitbucket.org:orgName/repo.git
RUN git config --global url.ssh://git@bitbucket.org/.insteadOf https://bitbucket.org/

Я знаю, что ключ в порядке ... он был создан с помощью

ssh-keygen -t rsa -b 4096 -f serviceBitbucketKey.ssh

Предложения? Спасибо!

Ответы [ 2 ]

1 голос
/ 07 октября 2019

Попробуйте, предположив, как подробно описано в ответе Adiii, что разрешения в порядке, чтобы сгенерировать ключ, используя старый формат PEM (вместо нового OpenSSH):

ssh-keygen -t rsa -P "" -C "your-email-address" -m PEM
1 голос
/ 07 октября 2019

У меня проблема с разрешением, если ключ действителен, попробуйте с этим

FROM alpine:3.7
#copy key
ADD serviceBitbucketKey.ssh /root/.ssh/id_rsa

#install git
RUN apk --no-cache update git

#set proper permission
RUN chmod 600 /root/.ssh/id_rsa && \
touch /root/.ssh/known_hosts && \
ssh-keyscan bitbucket.org > ~/.ssh/known_hosts
RUN git ls-remote git@bitbucket.org:myorg/myrepo.git
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...