Ich verwende Docker und führe ein Jenkins-Image aus. Das Bild, das ich versuche: https://github.com/orchardup/docker-jenkins
Ich muss ein SSH-Schlüsselpaar generieren, damit ich mich bei Bitbucket authentifizieren kann. Dies ist so, dass Jenkins meinen Quellcode abrufen und erstellen kann. Normalerweise würde ich mich nur an den Jenkins-Benutzer wenden und ssh-keygen ausführen, um dies zu erreichen.
Ich habe die Ausführungsdatei bearbeitet:
su jenkins
Dies gibt mir Zugriff auf die Shell, in der ich ausgeführt werden kann ssh-keygen
, um SSH-Schlüssel im jenkins-Benutzer-Home-Verzeichnis unter zu installieren ~/.ssh
. Danach beende ich und das Dockerfile geht weiter. Dieses Home-Verzeichnis wird /var/lib/jenkins
auch als Volume auf dem Host-Server bereitgestellt.
Das Problem ist, dass die SSH-Schlüssel hier angezeigt werden, aber nicht funktionieren. Irgendwelche Ideen, wie dies besser erreicht werden kann?
Vielen Dank
Antworten:
Ich habe gerade festgestellt, dass Sie
git
die Frage verwenden, die ich übersehen hatte ...Ab Version 2.0 des "Git Plugin" können die Anmeldeinformationen für bestimmte Repositorys im Abschnitt "Quellcodeverwaltung" des Tests selbst hinzugefügt werden. Es sollte eine Bezeichnung mit dem Namen "Anmeldeinformationen" vorhanden sein, mit der Sie entweder eine Kombination aus Benutzername / Kennwort oder Benutzername / privatem Schlüssel verwenden können.
Wenn Sie für jedes Repository, für das Sie Tests ausführen möchten, einen Bereitstellungsschlüssel erstellen, fügen Sie diesen Bereitstellungsschlüssel als privaten Schlüssel in den Anmeldeinformationen hinzu, und Sie sollten bereit sein.
quelle