# Хостинг для CI-раннеров
> Самостоятельно размещенные CI-раннеры выполняют ваши конвейеры сборки на серверах, которыми вы управляете, а не в общем пуле провайдера. План Incognito VPS VECTOR за $14 в месяц обычно превосходит хостинговый раннер, полностью устраняя поминутную оплату и ожидание в очереди.
**Source:** https://incognitovps.com/ru/use-cases/ci-runner-hosting
**Updated:** 2026-06-21

## Recommended configuration

| Field | Value |
| --- | --- |
| Plan | BASTION (hv-8) |
| Specification | 6 vCPU, 16 GB, 280 GB |
| Jurisdiction | Sofia, Bulgaria |
| Price | $27.00/mo |

Сборки зависят от CPU и ввода-вывода. BASTION дает 6 ядер EPYC, 16 ГБ и NVMe Gen4 за $27, а София — самый дешевый локация с транзитом, необходимым для раннера.

## Resource guidance

| Scenario | Minimum |
| --- | --- |
| Небольшой проект | 2 vCPU, 4 ГБ RAM |
| Типичный монорепозиторий | 6 vCPU, 16 ГБ RAM |
| Тяжелая компиляция (Rust, C++) | 16 vCPU, 64 ГБ RAM |
| Кэш Docker-слоев | 140 ГБ+ NVMe |

## Арифметика обычно решает все

Хостинговые минуты CI кажутся дешевыми, пока вы их не посчитаете. Команда, выполняющая несколько сотен сборок в месяц на 2-ядерных раннерах, регулярно тратит больше, чем стоит выделенный VPS с 6 ядрами, и получает более медленные сборки, потому что хостинговые раннеры — это скромные машины в условиях конкуренции.

Другая экономия — время, а не деньги. У собственного раннера нет очереди — ваша задача запускается сразу после пуша. В загруженном общем пуле ожидание раннера в несколько минут — норма, и эта задержка ложится на каждого разработчика при каждом пуше.

## Кэширование — вот где настоящее ускорение

Постоянный локальный NVMe меняет экономику CI больше, чем количество ядер. Docker-слои, реестры Cargo, node_modules, кэши Gradle и ccache сохраняются между запусками на собственном раннере, тогда как хостинговый раннер стартует с чистого листа и перекачивает все заново.

Для крупного проекта на Rust или C++ это часто означает сокращение времени сборки в пять-десять раз, и это совершенно бесплатно.

## Изоляция, потому что раннеры выполняют произвольный код

Собственный раннер выполняет все, что есть в конвейере, а для публичного репозитория это означает все, что участник добавил в pull request. Никогда не подключайте собственный раннер к публичному репозиторию без эфемерной изолированной среды.

Используйте эфемерные раннеры в контейнерах или недолговечных виртуальных машинах, не давайте раннеру ненужных учетных данных и размещайте его на сервере, где больше ничего нет. Машина за $14 на проект — дешевая страховка от того, что скомпрометированный конвейер доберется до остальной инфраструктуры.


## Часто задаваемые вопросы

### Какой план выбрать для CI-раннера?

VECTOR (4 vCPU, 8 ГБ) для типичного проекта; BASTION (6 vCPU, 16 ГБ) для монорепозитория или тяжелой компиляции. Постоянный NVMe-кэш важнее количества ядер для большинства конвейеров.

### Работает ли это с GitHub Actions?

Да. Зарегистрируйте машину как собственный раннер и указывайте его в runs-on. GitLab, Forgejo, Woodpecker и Drone работают так же.

### Безопасен ли собственный раннер для публичных репозиториев?

Нет без эфемерной изоляции. Pull request может выполнить произвольный код на раннере. Используйте эфемерные контейнеры или одноразовые виртуальные машины и никогда не давайте учетные данные, не нужные конвейеру.

### Насколько это быстрее?

Обычно в два-четыре раза на чистых вычислениях и в пять-десять раз на конвейерах с интенсивным кэшированием, потому что Docker-слои и кэши зависимостей сохраняются между запусками, а не загружаются заново.


---

Incognito VPS — Офшорные VPS, bare-metal и GPU-серверы в 16 локациях, 8 из которых выбраны за их правовые свойства. Без идентификации, оплата только криптовалютой, развертывание за 55 секунд.
Operating since 2020. 16 locations, 8 of them privacy jurisdictions. AS204287.
Payment: BTC, XMR, ETH, USDT, USDC, LTC, TRX, SOL, BNB, DOGE, TON, DAI. No identity verification at any point.
Catalogue: https://incognitovps.com/pricing.md · API: https://incognitovps.com/openapi.json · Index: https://incognitovps.com/llms.txt