Наша команда несколько дней пытается получить этот доступ, но мы совершенно не знаем, как это сделать.
В самой начальной части, чтобы получить доступ к каталогу, выполните следующие действия:
Создал ключи с помощью команды linux ssh keygen
и поместил открытый ключ в настройки безопасности репозитория Bitbucket.
после входа в Jenkins я начинаю новую задачу, затем собираю Freestyle и иду
Внутри задачи я нажал «Настройки», перейдите в «Конфигурации исходного кода», выберите git и поместите репозиторий как: [email protected]:my_company/my_repo.git
В учетных данных я нажимаю «Добавить/Дженкинс:» и настраиваю «Вид» как «Имя пользователя SSH с закрытым ключом», записываю свое имя пользователя, в «Закрытом ключе» нажимаю «Ввести напрямую» и вставляю свой закрытый ключ SSH в поле, завершаю нажатие в «ДОБАВИТЬ».
Я выбираю новые созданные учетные данные...
получить КРАСНОЕ сообщение об ошибке - и не могу получить доступ к репозиторию BitBucket:
Failed to connect to repository : Command "git ls-remote -h -- [email protected]:cryptoblock/cblock1.git HEAD" returned status code 128:
stdout:
stderr: No RSA host key is known for bitbucket.org and you have requested strict checking.
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Я много раз пытался изменить сгенерированные ключи
Я попытался поместить закрытый ключ на машину, на которой размещен док-контейнер с jenkins.
Я вошел в контейнер с jenkins и поместил закрытый ключ в каталог /root/.ssh
Я вошел в контейнер с зарегистрированными разрешениями dave sudo jenkins для пользователя jenkins и поместил закрытый ключ в каталог ~/.ssh
найди этотответ, в котором говорится поставить команду
jenkins@jenkins_host $ ssh-keyscan -H bitbucket.com >> ~/.ssh/known_hosts
Но я получаю ответ: bash: /var/jenkins_home/.ssh/known_hosts: Permission denied
даже пытаюсь как sudo (изменение файла sudoers)
После некоторого исследования ответа @mzm я создаю решение, выполнив следующие шаги:
1 - Создайте пару ключей ssh с помощью ssh-keygen
Затем:
2 - Установите Docker с Jenkins и запустите его докер
3 — на хосте (где работает докер) выполнить:
docker ps
(получить идентификатор контейнера)docker exec -u 0 -it <ID> /bin/bash
apt update
apt install sudo
apt install nano
sudo visudo
jenkins ALL=(ALL) NOPASSWD:ALL
exit
проверьте идентификатор докера jenkins с помощью docker ps
4 - Войдите в докер jenkins с помощью команды exec -it <ID> /bin/bash
и выполните по порядку:
mkdir /var/jenkins_home/.ssh
cd /var/jenkins_home/.ssh
touch known_hosts
ssh-keyscan -H bitbucket.org > known_hosts
После этого должно быть возможно подключение jenkins через ssh к Bitbucket.
Это может помочь или нет, если вы уже искали ответы (см. первый ответ на этом сайте), community.atlassian.com/t5/Bitbucket-questions/…