EQVPS

VPS پر سیلف-ہوسٹڈ GitHub Actions runner کیسے سیٹ اپ کریں

VPS پر ایک سیلف-ہوسٹڈ GitHub Actions runner رجسٹر کریں اور اسے سروس کے طور پر انسٹال کریں: non-root صارف کے طور پر runner ڈاؤن لوڈ کریں، اپنے repo ٹوکن سے رجسٹر کریں، svc.sh چلائیں تاکہ یہ ری بوٹ کے بعد بھی برقرار رہے۔ کاپی پیسٹ کمانڈز۔

ایک سیلف-ہوسٹڈ runner آپ کو گرم کیشز کے ساتھ فلیٹ-کوسٹ CI دیتا ہے — کوئی فی-منٹ بلنگ نہیں، آپ کا ٹول چین، آپ کی مشین۔ یہ کم سے کم سیٹ اپ گائیڈ ہے؛ سیلف-ہوسٹنگ GitHub-ہوسٹڈ منٹوں سے کیوں بہتر ہے اور Docker-جاب تفصیلات کے لیے دیکھیں مکمل گائیڈ اور GitHub Actions کے لیے VPS یوز-کیس۔

1. ایک non-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. اسے اپنے repo کے ساتھ رجسٹر کریں

./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 اب GitHub UI میں Idle دکھائی دیتا ہے اور اُسے نشانہ بنانے والے جابز اٹھا لیتا ہے۔

5. اسے کسی workflow سے استعمال کریں

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

Docker جابز (اختیاری)

Docker ایک بار انسٹال کریں، اور workflows ایسی امیجز بنا سکتے ہیں جہاں لیئر کیش رنز کے درمیان برقرار رہے:

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

دیکھیں VPS پر Docker انسٹال کرنا۔ سائزنگ: Small ($8/ماہ) زیادہ تر CI کے لیے آرام دہ ہے؛ بھاری کمپائلیشن کے لیے اوپر جائیں۔ تقریباً ایک منٹ میں root، کوئی KYC نہیں، کرپٹو میں ادائیگی۔

عمومی سوالات

سیلف-ہوسٹڈ GitHub Actions runner کیسے رجسٹر کروں؟

اپنے repo (یا org) میں: Settings → Actions → Runners → New self-hosted runner → Linux۔ GitHub ایک ڈاؤن لوڈ کمانڈ اور ایک بار کا رجسٹریشن ٹوکن دکھاتا ہے۔ non-root صارف کے طور پر runner ڈاؤن لوڈ کریں، اُس URL اور ٹوکن سے ./config.sh چلائیں، پھر svc.sh سے اسے سروس کے طور پر انسٹال کریں۔ اقدامات نیچے ہیں۔

runner root کے طور پر کیوں نہیں چل سکتا؟

runner ڈیزائن کے تحت root کے طور پر چلنے سے انکار کرتا ہے۔ ایک مخصوص non-root صارف بنائیں (adduser runner) اور وہیں سیٹ اپ کریں۔ یہ اس بات کو بھی محدود کرتا ہے کہ کوئی بدنیت workflow آپ کی مشین پر کیا چھو سکتا ہے۔

ری بوٹ کے بعد runner کو چلتا کیسے رکھوں؟

ساتھ آنے والے svc.sh ہیلپر کا استعمال کریں: sudo ./svc.sh install runner && sudo ./svc.sh start۔ یہ ایک systemd یونٹ انسٹال کرتا ہے تاکہ runner بوٹ پر شروع ہو، ناکامی پر دوبارہ چلے، اور GitHub UI میں Idle دکھائی دے۔

کیا runner کے لیے مخصوص IP چاہیے؟

نہیں۔ runner HTTPS پر GitHub کی طرف باہر کی جانب ڈائل کرتا ہے؛ اس تک کسی اِن باؤنڈ کنکشن کے پہنچنے کی ضرورت نہیں۔ ایک NAT پلان ($3/ماہ سے) کافی ہے۔ مخصوص IP صرف تب لیں جب آپ کوئی ایسی چیز بھی سیلف-ہوسٹ کریں جو ٹریفک سرو کرتی ہو۔

کیا آپ شناخت یا کارڈ مانگتے ہیں؟

نہیں۔ سائن اپ کے لیے ایک ای میل، USDC یا USDT میں ادائیگی — کوئی دستاویزات نہیں، کوئی کارڈ نہیں۔ تقریباً ایک منٹ میں root۔

تبصرے

ابھی کوئی تبصرہ نہیں۔ پہلے بنیں۔

ایک تبصرہ چھوڑیں

تبصرے ظاہر ہونے سے پہلے moderate کیے جاتے ہیں۔