Мои предположения:
У вас есть Gitlab Runner с запущенным докером-исполнителем (может быть локально).
У вас есть сервер для развертывания (тоже может быть локально, он должен быть доступен для Runner).
У вас есть учетная запись Gitlab, и вы уже создали репозиторий для своего проекта с файлом .gitlab-ci.yml.
Необходимые шаги
Подключитесь по ssh к раннеру:
| |
Создайте пару ключей SSH:
| |
Получите закрытый ключ раннера:
| |
Добавьте этот закрытый ключ в качестве переменной в свой проект на Gitlab:
Перейдите: Settings > CI/CD > Variables
Выполните вход по SSH к серверу:
| |
Скопируйте открытый ключ раннера cat id_rsa.pub внутрь ~/.ssh/authorized_keys сервера.
Измените свой .gitlab-ci.yml. согласно следующему примеру. Предполагается образ на основе ubuntu.
Отредактируйте CI скрипт свои задачи:
| |
Сделайте коммит .gitlab-ci.yml, запустится пайплайн и отправит по ssh на ваш сервер необходимых файл!
Решение ошибки Error loading key “/dev/fd/63”: invalid format
Если при выполнении CI/CD возникает ошибка вида:
| |
Выполните команду получения ключа следующим образом:
| |