s sh на удаленный сервер из Gitlab CI: ssh_askpass: exe c (/ usr / X11R6 / bin / s sh -askpass): нет такого файла или каталога. В доступе отказано (публичный ключ, пароль) - PullRequest
0 голосов
/ 11 февраля 2020

Я использую GitLab для CI / CD, и я хотел бы s sh для моего Raspberry Pi для развертывания. Я сгенерировал новую пару ключей ED25519 SSH, добавил закрытый ключ к переменным и ключ pubi c для развертывания ключей.

Мой gitlab-ci.yml файл выглядит следующим образом:

deyployment:
    stage: deploy
    image: ubuntu:latest
    before_script:
      - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
      - eval $(ssh-agent -s)
      - echo "$SSH_PRIVATE_KEY" > key
      - chmod 600 key
      - ssh-add key
      - rm key
      - mkdir -p ~/.ssh
      - chmod 700 ~/.ssh
      - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
    script:
      - ssh -o StrictHostKeyChecking=no pi@IP_ADDRESS 'cd dockerproject2 && mkdir test'
    tags:
      - ssh

Я получаю этот вывод после запуска задания развертывания:

$ ssh -o StrictHostKeyChecking=no pi@IP_ADDRESS 'cd dockerproject2 && mkdir test'
ssh_askpass: exec(/usr/X11R6/bin/ssh-askpass): No such file or directory
Permission denied, please try again.
ssh_askpass: exec(/usr/X11R6/bin/ssh-askpass): No such file or directory
Permission denied, please try again.
ssh_askpass: exec(/usr/X11R6/bin/ssh-askpass): No such file or directory
pi@IP_ADDRESS: Permission denied (publickey,password).

Пока я просто использую клавишу s sh. Я не уверен, но вывод Permission denied (publickey,password) выглядит так, как будто Raspberry Pi также нужен пароль.

Я также пытался использовать клавишу id_rsa в папке ~/.ssh. Я сгенерировал папку ~/.ssh/authorized_keys и сохранил там копию файла id_rsa.pub. Это дало мне тот же результат.

1 Ответ

0 голосов
/ 12 февраля 2020

Ух ты, это было немного глупо. Я получил эту ошибку, потому что я пытался запустить развертывание с помощью оболочки. Но он должен работать с docker бегуном. По крайней мере, в моем случае.

...