Como obtenho uma chave ssh pública em uma imagem do docker jenkins para autenticação do git?

7

Estou usando o Docker e estou executando uma imagem do Jenkins. A imagem que estou tentando: link

Eu preciso gerar um par de chaves ssh para que eu possa usá-lo para autenticar no bitbucket. Isso é para que os jenkins possam puxar meu código-fonte e construí-lo. Normalmente, eu apenas suaria para o usuário do jenkins e executaria o ssh-keygen para conseguir isso.

Eu editei o arquivo de execução:

su jenkins

Isso me dá acesso ao shell, no qual posso executar ssh-keygen para instalar as chaves ssh no diretório inicial do usuário do Jenkins em ~/.ssh . Depois disso eu saio e o Dockerfile continua. Esse diretório inicial é /var/lib/jenkins , que também é montado como um volume no servidor host.

O problema é que as chaves ssh aparecem aqui, mas não estão funcionando. Alguma idéia de como conseguir isso de uma maneira melhor?

Obrigado

    
por Jason Prawn 01.02.2014 / 18:16

1 resposta

1

Acabei de perceber que você está usando git da pergunta, que eu consegui ignorar ...

A partir da versão 2.0 do "Git Plugin", as credenciais para repositórios específicos podem ser adicionadas na seção "Source Code Management" do próprio teste. Deve haver um rótulo chamado "Credenciais", que permite usar uma combinação de nome de usuário / senha ou nome de usuário / chave privada.

Se você criar uma chave de implantação para cada repositório em que está interessado em executar testes, adicione essa chave de implantação como a chave privada em credenciais e você deve estar pronto.

    
por 02.02.2014 / 03:57