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 একবার ইনস্টল করুন, আর workflow লেয়ার ক্যাশ রানের মধ্যে টিকে থাকা অবস্থায় ইমেজ বিল্ড করতে পারে:

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

দেখুন VPS-এ Docker ইনস্টল করা। সাইজিং: Small ($8/মাস) বেশিরভাগ CI-র জন্য স্বচ্ছন্দ; ভারী কম্পাইলেশনের জন্য উপরে উঠুন। প্রায় এক মিনিটে root, কোনো KYC নেই, ক্রিপ্টোতে পেমেন্ট।

FAQ

কীভাবে একটি সেল্ফ-হোস্টেড 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।

মন্তব্য

এখনো কোনো মন্তব্য নেই। প্রথম হোন।

একটি মন্তব্য দিন

মন্তব্য প্রকাশের আগে মডারেট করা হয়।