We detected you are likely not from a Russian-speaking region. Would you like to switch to the international version of the site?

  Назад к списку статей

Создание и запуск серверов CI/CD (Jenkins, GitLab Runner, Drone) внутри Termux с поддержкой пайплайнов на ARM‑архитектуре

В последние годы Termux стал мощным инструментом для разработчиков, особенно для тех, кто работает с ARM-архитектурой. Возможность запуска различных серверных приложений, включая системы непрерывной интеграции и непрерывной доставки (CI/CD), делает Termux привлекательным решением для локальной разработки и тестирования. В этой статье мы рассмотрим процесс установки и настройки популярных CI/CD серверов – Jenkins, GitLab Runner и Drone – внутри Termux, уделяя особое внимание поддержке ARM-архитектуры.

Необходимые условия

  • Установленный Termux
  • Актуальные пакеты: pkg update && pkg upgrade
  • Достаточно свободного места на устройстве.

1. Jenkins

Jenkins – один из самых популярных инструментов CI/CD. Он предоставляет широкие возможности для автоматизации сборки, тестирования и развертывания приложений.

Установка Jenkins

pkg install wget curl gnupg ca-certificates apt-transport-https unzip -y
wget -O - https://pkg.jenkins.io/debian-stable/jenkins.io-2023.12.noarch.key | apt-key add -
echo deb https://pkg.jenkins.io/debian-stable/ > /data/data/com.termux/files/usr/etc/apt/sources.list.d/jenkins.list
apt update
apt install jenkins -y

Запуск Jenkins

service jenkins start
service jenkins status  # Проверка статуса

После запуска Jenkins доступен через веб-браузер на локальной машине (например, http://localhost:8080). Первый запуск потребует установки администратора. Следуйте инструкциям на экране.

2. GitLab Runner

GitLab Runner позволяет автоматизировать процессы сборки и тестирования в проектах GitLab.

Установка GitLab Runner

curl -sS https://gitlab-runner-downloads.s3.amazonaws.com/latest/gitlab-runner-linux-arm64.sh | sh
gitlab-runner register --url https://gitlab.com --registration-token  --executor shell --description "Termux CI Runner" --tags arm64

Замените на токен, сгенерированный в настройках проекта GitLab.

Запуск GitLab Runner

./gitlab-runner run --executor shell --description "Termux CI Runner" --tags arm64

GitLab Runner будет автоматически запускаться при появлении новых задач в проекте GitLab.

3. Drone

Drone – это современный CI/CD сервер, написанный на Go. Он отличается простотой настройки и удобным интерфейсом.

Установка Drone

curl -sLo /data/data/com.termux/files/usr/local/bin/drone  https://github.com/drone/drone/releases/download/v0.9.2/drone_0.9.2_arm64.zip
unzip drone_0.9.2_arm64.zip -d /data/data/com.termux/files/usr/local/drone
chmod +x /data/data/com.termux/files/usr/local/drone/drone

Запуск Drone

drone server --host 0.0.0.0 --port 8080

Drone доступен через веб-браузер на локальной машине (например, http://localhost:8080). Настройте интеграцию с репозиторием (например, GitHub, GitLab, Bitbucket).

Работа с пайплайнами

После установки и настройки CI/CD сервера, необходимо настроить пайплайны. Пайплайны – это последовательность шагов, которые выполняются при сборке, тестировании и развертывании приложения. Конфигурация пайплайнов зависит от выбранного CI/CD сервера и используемого языка программирования.

Для Jenkins пайплайны настраиваются с помощью Jenkinsfile, а для GitLab Runner – с помощью .gitlab-ci.yml. Drone использует конфигурационный файл drone.yml.

Поддержка ARM-архитектуры

Все представленные инструменты предоставляют бинарные файлы, оптимизированные для ARM-архитектуры. Это обеспечивает высокую производительность и эффективность работы в Termux на устройствах с ARM-процессорами.

Заключение

В этой статье мы рассмотрели процесс установки и настройки популярных CI/CD серверов в Termux на ARM-архитектуре. Надеемся, что данное руководство поможет вам автоматизировать процессы разработки и тестирования ваших приложений.

РыбинскЛАБ предлагает профессиональные услуги в области разработки и внедрения CI/CD систем. Мы поможем вам создать эффективные пайплайны и автоматизировать процессы сборки, тестирования и развертывания ваших проектов. Свяжитесь с нами для получения консультации!

* Текст статьи подготовлен и структурирован с использованием технологий искусственного интеллекта. Проверен и доработан перед публикацией.

Нужна помощь с настройкой Termux, Linux и серверов?

Я оказываю ИТ-услуги: настройка серверов, автоматизация, безопасность, помощь с Linux и инфраструктурой. Материалы сайта — только в ознакомительных и образовательных целях.

Связаться со мной
Поддержать проект