EQVPS

Как да настроите self-hosted GitHub Actions runner на VPS

Регистрирайте self-hosted GitHub Actions runner на VPS и го инсталирайте като услуга: изтеглете runner-а като потребител без root, регистрирайте с токена на репото си, стартирайте svc.sh, за да преживее рестартирания. Команди за копиране-поставяне.

Self-hosted runner ти дава CI с фиксирана цена с топли кешове — без таксуване на минута, твоята верига от инструменти, твоята машина. Това е минималното ръководство за настройка; защо self-hosting бие минутите, хоствани от GitHub, и подробности за Docker задачите виж в пълното ръководство и случая на употреба VPS за GitHub Actions.

1. Създай потребител без root (runner-ът отхвърля root)

adduser --disabled-password --gecos "" runner
su - runner

2. Изтегли runner-а

В GitHub: Settings → Actions → Runners → New self-hosted runner → Linux, което ти дава точното изтегляне и еднократен токен. После:

mkdir actions-runner && cd actions-runner
curl -o actions-runner-linux-x64.tar.gz -L \
  https://github.com/actions/runner/releases/latest/download/actions-runner-linux-x64.tar.gz
tar xzf actions-runner-linux-x64.tar.gz

3. Регистрирай го с репото си

./config.sh --url https://github.com/YOUR_ORG/YOUR_REPO --token YOUR_TOKEN

4. Инсталирай като услуга (преживява рестартирания)

Не стартирай ./run.sh в терминал — инсталирай го:

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

Runner-ът вече се показва като Idle в интерфейса на GitHub и поема задачите, насочени към него.

5. Използвай го от workflow

jobs:
  build:
    runs-on: self-hosted
    steps:
      - uses: actions/checkout@v4
      - run: make build && make test

Docker задачи (по избор)

Инсталирай Docker веднъж и workflow-ите могат да строят образи, като кешът на слоевете се запазва между изпълненията:

sudo apt install -y docker.io
sudo usermod -aG docker runner

Виж инсталиране на Docker на VPS. Оразмеряване: Small ($8/мес) е удобен за повечето CI; качи нагоре за тежка компилация. Root за около минута, без KYC, плащане в крипто.

Въпроси

Как да регистрирам self-hosted GitHub Actions runner?

В репото си (или организацията): Settings → Actions → Runners → New self-hosted runner → Linux. GitHub показва команда за изтегляне и еднократен регистрационен токен. Изтегли runner-а като потребител без root, стартирай ./config.sh с този URL и токен, после го инсталирай като услуга със svc.sh. Стъпките са по-долу.

Защо runner-ът не може да работи като root?

Runner-ът отказва да работи като root по замисъл. Създай специален потребител без root (adduser runner) и го настрой там. Това също ограничава какво би могъл да докосне зловреден workflow на машината ти.

Как да държа runner-а работещ след рестарт?

Използвай вградения помощник svc.sh: sudo ./svc.sh install runner && sudo ./svc.sh start. Той инсталира systemd юнит, така че runner-ът да стартира при зареждане и да рестартира при отказ, и да се показва като Idle в интерфейса на GitHub.

Нужен ли ми е специален IP за runner?

Не. Runner-ът се свързва навън към GitHub по HTTPS; нищо не трябва да го достига входящо. NAT план (от $3/мес) върши работа. Вземи специален IP само ако също така self-host-ваш нещо, което обслужва трафик.

Искате ли документ за самоличност или карта?

Не. Имейл за регистрация, плащане в USDC или USDT — без документи, без карта. Root за около минута.

Коментари

Още няма коментари. Бъди първият.

Остави коментар

Коментарите се модерират преди да се появят.