Я пытаюсь использовать docker в моей сборке jenkins для запуска тестов. Мне нужно использовать yarn
для установки зависимостей.Некоторые из этих зависимостей живут в частных репозиториях github.Как правильно вводить ключи SSH в образ порожденного докера?
Я попытался поделиться jenkins .ssh dir как том без удачи.
pipeline {
agent {
docker {
image 'circleci/node:8.12.0-stretch-browsers'
args '-v $HOME/.ssh:/.ssh'
}
}
// ...
}
Я заметил, что запуск whoami
на этапе сборки приводит к следующему:
whoami: cannot find name for user ID 988
Запуск echo $HOME
просто возвращает /
.
Это, кажется, противоречит тому, что я считаю в базовом Dockerfile.
https://github.com/circleci/circleci-images/blob/staging/shared/images/Dockerfile-basic.template#L82-L85
** Edit
Я понял, что jenkins запускает его как пользователь jenkins
на хосте, откуда исходит 988.Если я изменю его на запуск в качестве пользователя circleci (3434), я получу много ошибок прав доступа, потому что у этого пользователя нет доступа к записи в общем томе.Не уверен, как это сделать.