Өзің орналастыратын GitHub Actions runner, ЕО-да

Дәл сол workflow, Прага не Ковильяндағы минутпен емес, аймен сіздікі болатын машинада - құрастыру кеші әлі жылы, ал брандмауэр шынымен рұқсат ете алатын бір адрес бар.

Tier III сертификатталған ISO 9001 ISO/IEC 27001 ISO 14001 GDPR талаптарына сәйкес

Бұл кімге арналған

Минут есептегішін бақылап отырған команда

2 ядролы Linux минуты 0,006 USD, ал 16 ядролы минут 0,042 USD тұрады, сондықтан тесттер жиынтығын жылдам еткен матрицалық құрастыру - шотты қызық еткен нәрсенің дәл өзі.

Жеке нәрсеге жетуі керек workflow

Орналастыру қадамы тек белгілі адрестерді қабылдайтын дерекқормен, тіркеліммен немесе құрылғымен сөйлесуі керек, ал GitHub-тың хостингтегі runner-лері рұқсат етуге тым үлкен диапазоннан келеді.

Образ әкелгеннен көбірек керек ететін құрастыру

Лицензияланған компилятор, эмулятор, 30 ГБ сынақ деректері немесе жай ғана хостингтегі runner-де бар дискіден көбірек орын - ал мұны әр тапсырмада қайта орнату конвейердің көп бөлігін алады.

Runner сіздікі болғанда не өзгереді

  • Жұмыс каталогы мен кештер тапсырмалар арасында сақталады, сондықтан тәуелділіктерді қалпына келтіру workflow-дың ең ұзақ қадамы болудан қалады.
  • AS204057 ішіндегі статикалық IPv4: дерекқорыңыз, тіркеліміңіз немесе VPN-іңіз оны адрес бойынша рұқсат ете алады.
  • Орнатқаныңыз орнатулы күйінде қалады - құралдар тізбектері, лицензияланған SDK, эмуляторлар, үлкен сынақ деректері жиынтықтары, хостингтегі образда жоқтың бәрі.
  • Репозиторий, ұйым немесе кәсіпорын деңгейінде тіркелген runner-лер, өзіңіз таңдаған белгілермен және оларды runs-on арқылы таңдайтын workflow-мен.
  • Хостингтегі runner келетін бекітілген пішін емес, өзіңіз таңдайтын диск пен жады.
  • Кипр келісімшарты бойынша Прага не Ковильяндағы машина - бұл аймақ параметрі емес, деректер резиденциясы туралы жауап.

Конвейер шын мәнінде не істейтініне қарай өлшенген

Бір runner қызметі - бір мезгілде бір тапсырма, сондықтан мұндағы параллельдік тариф сатысы емес, runner процестерінің саны: бір хостта бірнешеуі, әрқайсысы өз каталогында - қалыпты пішін. Орташаға емес, ең ауыр тапсырмаға қарап өлшеңіз және дискіде қор қалдырыңыз: жұмыс каталогы, құралдар кеші және контейнер қабаттары солда тұрады, ал дәл осы тұрақтылық өзінде орналастырудың себебі. Мәміленің адал жартысы: тұрақты айлық хост push жоқ аптада да сол ақшаны тұрады, ал провайдердегі минуттар онда ештеңе тұрмайды. Конвейер дерлік күн сайын жүре бастаған бойда ол ақталады.

Алғашқы раннер
16.49
айына

Тапсырыс беру
бір-екі runner қызметі
2 vCPU
8 GB RAM
80 GB NVMe
1 статикалық IPv4
1 апталық сақтық көшірме кіреді
Топ раннері
32.99
айына

Тапсырыс беру
төрттен алтыға дейін runner қызметі
4 vCPU
16 GB RAM
160 GB NVMe
1 статикалық IPv4
1 апталық сақтық көшірме кіреді
Жүктелген пул
62.94
айына

Тапсырыс беру
матрицалық құрастыру немесе бірнеше репозиторий
8 vCPU
32 GB RAM
240 GB NVMe
1 статикалық IPv4
1 апталық сақтық көшірме кіреді

Жаңа хостқа GitHub Actions runner-ін қалай орнату керек

Linux x64, GitHub құжаттаған тәртіппен. Тіркеу токені әр runner үшін жасалады және бетті ашқаннан кейін бір сағаттан соң мерзімі бітеді, сондықтан оны ең соңында алыңыз.

  1. Оған привилегиясыз пайдаланушы жасаңыз

    sudo adduser --disabled-password --gecos "" runner
    sudo -iu runner

    Runner workflow не десе, соны орындайды, сондықтан ол root болмауы және үй каталогын басқа ештеңемен бөліспеуі керек. Төмендегінің бәрі осы пайдаланушыдан жүреді.

  2. Runner-ді жүктеп алып, тарқатыңыз

    mkdir actions-runner && cd actions-runner
    curl -O -L https://github.com/actions/runner/releases/download/v2.336.0/actions-runner-linux-x64-2.336.0.tar.gz
    echo "04cf0be1aff4c3ec3554466c39124ca250e3effd8873bb7e8d68535aa9505d5d  actions-runner-linux-x64-2.336.0.tar.gz" | shasum -a 256 -c
    tar xzf ./actions-runner-linux-x64-2.336.0.tar.gz

    Бұл нұсқа мен бұл бақылау сомасы - v2.336.0 шығарылымымен жарияланғандар. Мұны көшірмес бұрын шығарылымдар бетінен жаңасы бар-жоғын тексеріңіз: одан кейін runner өзін өзі жаңартады, бірақ бірінші жүктеуді сіз тексересіз.

  3. Оны репозиторийге немесе ұйымға баптаңыз

    ./config.sh --url https://github.com/YOUR-ORG/YOUR-REPO --token AXXXXXXXXXXXXXXXXXXXXXXXXX --labels self-hosted,linux,x64,eu

    Токенді Settings, содан кейін Actions, содан кейін Runners, содан кейін New self-hosted runner ішінен алыңыз - ол уақытпен шектелген және берілгеннен кейін бір сағаттан соң мерзімі бітеді. Бір runner-ді бірнеше репозиторий арасында бөлісу үшін URL-ді репозиторийге емес, ұйымға бағыттаңыз.

  4. Қызмет ретінде іске қосыңыз

    sudo ./svc.sh install runner
    sudo ./svc.sh start
    sudo ./svc.sh status

    svc.sh қызмет қай пайдаланушыдан жүретінін қабылдайды - сондықтан runner пайдаланушысы алдымен жасалды. Қызметке бекінбес бұрын бір тапсырманың келуін ғана көргіңіз келсе, оның орнына ./run.sh қолданыңыз.

  5. needrestart тапсырмаларды ортасында өлтірмесін

    echo '$nrconf{override_rc}{qr(^actions\.runner\..+\.service$)} = 0;' | sudo tee /etc/needrestart/conf.d/actions_runner_services.conf

    Debian мен Ubuntu-да needrestart кітапханалары жаңартылған қызметтерді қайта іске қосады - оның ішінде тапсырма ортасындағы runner-ді де. GitHub оны алып тастау жолы ретінде дәл осы файлды құжаттайды.

  6. Оған workflow бағыттаңыз

    name: smoke
    on: [push]
    jobs:
      build:
        runs-on: [self-hosted, linux, x64, eu]
        steps:
          - uses: actions/checkout@v6
          - run: cat /etc/os-release

    runs-on тізімдегі әр белгімен сәйкес келеді, сондықтан төрт белгі сұраған тапсырма төртеуін де көтеретін runner-ге ғана түседі. Кезекте қалса, бір белгі жетіспейді - ал 24 сағаттан артық күткен тапсырма сәтсіз аяқталады.

Ресми құжаттамамен салыстырылған күні 2026-08-15 — дереккөзді оқу

Біз кім емеспіз

  • Біз GitHub емеспіз. GitHub, GitHub Actions және runner оларға тиесілі, әрі бұл беттегі ештеңе олармен мақұлданбаған. Біз runner жүретін машинаны сатамыз.
  • Бұл сіздің GitHub тарифіңізді алмастырмайды. Өзің орналастыратын runner-лер Actions минуттарын жұмсамайды, мәні сонда, бірақ лицензиялар, сақтау орны және қалғанының бәрі олардың шотында қалады.
  • Сұрамасаңыз, біз runner-ді басқармаймыз. Оны өзіңіз орнатасыз немесе біздің әкімшілендіру қызметімізді қосасыз, сонда біз оны жаңартып, тіркеулі әрі бақылауда ұстаймыз.
  • Өзің орналастыратын runner-лер ашық репозиторийлерге нашар жарайтыны құжатталған: форк workflow файлын өзгертуді ұсына алады, ал сол өзгертілген workflow сіздің машинаңызда орындалар еді. Мұны мұқият ойламаған болсаңыз, оларды жабық репозиторийлерде ұстаңыз.
  • Мұнда автомасштабтауы бар басқару жазықтығы жоқ. Әр тапсырмаға жасалып, жойылатын runner қаласаңыз, ол - Kubernetes кластеріндегі Actions Runner Controller, оны біз қуана орналастырамыз, басқа бетте.

Топтар кеш байқайтын бөліктер

  • Бір runner қызметі бір мезгілде бір тапсырма орындайды. Параллельдік параметрден емес, әрқайсысы өз каталогында және өз қызметімен бірнешеуін орнатудан шығады.
  • Тіркеу токенінің мерзімі берілгеннен кейін бір сағаттан соң бітеді, сондықтан оны күн ортасында емес, config.sh іске қосуға дайын болғанда жасаңыз.
  • Белгілер - бүкіл бағыттау механизмі. runs-on тізімдегі әр белгімен сәйкес келеді, сондықтан қате жазу қате бермейді: тапсырма жай ғана күтеді және кезекте 24 сағаттан кейін сәтсіз аяқталады.
  • Runner-ге lttng-ust, OpenSSL, Kerberos, zlib және libicu болуы керек. Debian мен Ubuntu оларды әкеледі; минималды контейнер образы жиі әкелмейді.
  • Linux-та x64 пен ARM64, ал ARM32 тек Linux-та қолдау табады. Debian 10 және одан жаңасы мен Ubuntu 20.04 және одан жаңасы - құжатталған негіздер.
  • Workflow артында қалдырғанның бәрі дискіде қалады - артықшылық та осында, әрі өзің орналастыратын runner-ге жоспарлы тазалау мен снапшот керек болатын себеп те осында.

Провайдердегі CI минуттары мен өз runner-іңіз

Провайдер хостингіндегі CI минуттарыDCXV-дегі раннер
Не үшін төлейсізЖоба өмір сүріп тұрғанда әр тапсырманың әр минуты үшінТұрақты айлық хост үшін, конвейер сол айда не істесе де
Баяулаған құрастыруБаяу күйінде қалған әр айда қымбатырақ түседіАртық ештеңе тұрмайды - машина әлдеқашан төленген
Docker қабаттар кешіӨзіңіз жүктеп салып, кері жүктемесеңіз, әр тапсырмада суықЖергілікті NVMe-де жылы, тапсырмалар арасында да, күндер арасында да
ПараллельдікКөтеретін тариф сатысыӨз конфигурация файлыңызда қоятын сан
Checkout қайда түседіОртақ машиналар паркіне, көбіне бекіте алмайтын аймаққаПрага не Ковильяндағы бір машинаға, Кипр келісімшарты бойынша
Шығыс адресЕштеңемен рұқсат ете алмайтын үлкен ортақ диапазонAS204057 ішіндегі бір статикалық IPv4, рұқсат етуге өзіңіздікі
Машина нені ұстай аладыRunner образы кездейсоқ әкелгендіБір рет орнатқан кез келген құралдар тізбегін, лицензияны немесе сынақ деректері жиынтығын

Бұл сіздің хостыңызда қалай іске қосылады

1

Конвейер не істейтінін айтыңыз

Бүгін орындайтын ең ауыр тапсырма, олардың қаншасы қатар жүруі керек және ол контейнер образдарын құрастыра ма. Хостты болжамсыз өлшеуге осы жеткілікті.

2

Біз машинаны тапсырамыз

Прага немесе Ковильян, root қатынасы және статикалық IPv4, он минуттан аз уақытта. Runner әлдеқашан образдың ішінде болса, өз образыңызды әкеліңіз.

3

Осы беттегі қадамдық нұсқаулықты орындаңыз

Бұл өндірушінің реттілігі, блог жазбасынан емес, оның қазіргі құжаттамасынан алынған, әрі таза хостта бірнеше минут алады.

4

Суретке түсіріп алыңыз, содан соң екіншісін қосыңыз

Бірінші конвейер жасыл болған бойда снапшот жасаңыз, сонда келесі машина нөлден құру емес, қалпына келтіру болады. Пул бір хостты алыпқа айналдырумен емес, хост қосумен өседі.

Неліктен бізді таңдайды

  • Tier III сертификатталған нысандар, нысан SLA 99,982 %
  • Өз желісі, AS204057, IPv4 және IPv6
  • Орташа жауап беру уақыты шамамен 10 минут болатын 24/7/365 қолдау
  • Кипрдегі компания, ЕО юрисдикциясы, 2007 жылдан GDPR-ге сәйкестік

FAQ

- GitHub-тың хостингтегі runner-лері өзің орналастырумен салыстырғанда қанша тұрады?

GitHub хостингтегі Linux runner-лерін минутпен есептейді: 2 ядроға 0,006 USD, 4-ке 0,012, 8-ге 0,022 және 16-ға 0,042, Windows 2 ядроға 0,010, ал macOS 3 не 4 ядролы машинаға 0,062. Өзің орналастыратын runner-лер Actions минуттарын жұмсамайды. Бізде хост айына 16,49 EUR-дан басталады, бұл шамамен 2 ядролы хостингтегі runner-дегі 2700 минуттың құнына тең - демек қиылысу нүктесі айына 45 сағаттай құрастыру уақытының маңында

- Өзің орналастыратын GitHub Actions runner-ін қалай баптаймын?

Привилегиясыз пайдаланушы жасаңыз, actions/runner шығарылымдарынан linux-x64 үшін runner архивін жүктеп, бақылау сомасын тексеріңіз, ./config.sh дегенді репозиторийіңіздің немесе ұйымыңыздың URL-імен және Settings, Actions, Runners ішіндегі тіркеу токенімен іске қосыңыз, содан кейін оны sudo ./svc.sh install арқылы қызмет ретінде орнатып, іске қосыңыз. Дәл командалар осы бетте. Тіркеу токенінің мерзімі берілгеннен кейін бір сағаттан соң бітеді

- Бір runner бір мезгілде қанша тапсырма орындайды?

Біреу. Runner қызметі бір мезгілде бір тапсырма алады, сондықтан параллельдік хостта бірнеше runner қызметін, әрқайсысын өз каталогында орнатуды білдіреді. Сондықтан осы беттегі өлшем таңдау тапсырмаларды емес, runner қызметтерін санайды, әрі сондықтан 8 vCPU машина шағын матрицалық құрастыруды қормен көтереді

- Қандай операциялық жүйелер мен архитектуралар қолдау табады?

Linux-та Debian 10 және одан жаңасы, Ubuntu 20.04 және одан жаңасы, RHEL 8 және одан жаңасы, CentOS 8 және одан жаңасы, Fedora 29 және одан жаңасы, openSUSE 15.2 және одан жаңасы және олардың туыстары, x64, ARM64 және ARM32 үстінде. Runner-ге сондай-ақ lttng-ust, OpenSSL, Kerberos, zlib және libicu керек, оларды Debian мен Ubuntu стандартты түрде әкеледі

- Ашық репозиторийде өзің орналастыратын runner қауіпсіз бе?

GitHub мұны ұсынбайды, әрі себебі нақты: кез келген адам workflow файлын өзгертетін pull request аша алады, ал сол өзгертілген workflow сіздің машинаңызда орындалар еді. Мұны мұқият оқып, шынайы оқшаулау орнатпаған болсаңыз, өзің орналастыратын runner-лерді жабық репозиторийлерде ұстаңыз. Оның үстіне тапсырма артында қалдырғанның бәрі дискіде сақталады - кеш үшін артықшылық, құпиялар үшін тәуекел

- Бір runner бірнеше репозиторийге қызмет ете ала ма?

Иә. Оны репозиторий емес, ұйым деңгейінде тіркеңіз, сонда ұйымдағы кез келген репозиторий оны таңдай алады, ал жұмысты runs-on ішіндегі белгілер бағыттайды. Ешбір runner-де жоқ белгіні сұраған тапсырма жай ғана күтеді және кезекте 24 сағаттан кейін сәтсіз аяқталады - runs-on ішіндегі қате жазу дәл солай көрінеді

Егер сізге көмек қажет болса немесе қосымша сұрақтарыңыз болса, менеджерлерге хабарласыңыз немесе қолдау қызметіне келесі мекенжай бойынша жазыңыз support@dcxv.com

Бастауға дайынсыз ба?

Бұлттық серверлер 15 €/айдан бастап
  • Ай сайын төлем
  • Қосу ақысы жоқ
  • Байлау жоқ