С момента покупки GitHub майкрософтом, на сайте появилось много полезных сервисов. Один из них - GitHub Actions. Сервис предоставляет набор функций для CI/CD. Дает возможность собирать проекты, запускать тесты и выполнять развертывание приложения.
GitHub дает возможность выполнять сборку как на внутренних серверах так и добавлять собственные и проводить сборку на них.
Ниже издложена инструкция по добавлению Docker droplet с Digital Ocean в качестве ранера к существующему проекту:
- После создания дроплета
Docker 5:19.03.1~3 on 18.04
заходим на него через ssh - Первое, что нужно сделать - добавить пользователя, так как GitHub Runner не позволяет запустить агент от root
$ adduser github
- Вводим пароль и заполняем информацию о пользователе или можно оставить ее пустой
- Добавляем пользователя в группы sudo и docker
$ adduser github sudo $ sudo usermod -aG docker github $ newgrp docker
- Логинимся только что созданным пользователем
$ sudo su - github
- Скачиваем и устанавливаем ранер, как указанно в инструкции Settings -> Actions -> Add runner. Имя ранера и рабочей директории можно оставить со значениями по умолчанию.
- Чтобы запустить ранер как сервис, останавливаем текущий скрипт
Ctrl+C
- Устанавливаем сервиса ранера
$ ./svc.sh install
- Запускаем ранер как сервис
$ ./svc.sh start
- В workflow yaml файле меняем
runs-on: ubuntu-latest
наruns-on: self-hosted
Comments