Очень распространённая ошибка, при запуске процесса деплоймента с использованием CI/CD. Я использую GitLab, но это относится к любым пайплайнаторам..
Вообще-то, это относится к пакету ssh и именно он сообщает, что происходит соединение с каким-то странным, ранее неизвестным сервером.
Ок, решения три:
Познакомиться
с сервером перед соединением.- Передавать настройку
забей
в момент запуска командыssh
- Записывать эту же настройку в конфиг ssh, которая будет говорить пакету
Не парься, всё норм. Соединяйся со всеми серверами
.
Второй и третий варианты обсосаны до дыр и всем известны, а кому не известны, те легко могут найти их по запросу Host key verification failed
. С моей точки зрения, они выглядят не эстетично, в контексте выполнения команд в докере. Судите сами:
Знакомимся с сервером
mkdir -m 700 -p ~/.ssh ssh-keyscan -t rsa example.com >> ~/.ssh/known_hosts ssh root@example.com 'bash --login -s' < deploy.sh
Отключаем проверку во время запуска ssh команды
ssh -o StrictHostKeyChecking=no root@example.com 'bash --login -s' < deploy.sh
Просто выключаем проверку
echo "StrictHostKeyChecking no" >> /etc/ssh/ssh_config ssh root@example.com 'bash --login -s' < deploy.sh
Все три имеют право на жизнь, но лично мне нравится третий.