د GitHub-کوربه شوي runnerونه اسانه دي تر هغه چې بل یا د انتظار وخت درد کول پیلوي. د وړیا درجې پورته تاسو د هرې دقیقې تادیه کوئ، هره دنده cold-start کیږي، او هره کاله وابستګۍ بیا-ښکته کوئ. یو ځان-کوربه شوی runner په ستاسو خپل VPS دا درې واړه اړوي: فلیټ میاشتنی لګښت، یو تود ماشین چې ستاسو کیشونه یې لا دمخه په ديسک وي، او یو د جوړونې چاپیریال چې تاسو یې په بشپړه توګه کنټرولوئ — ځانګړي د وسیلې نسخې، نور RAM، د Docker layer cache چې واقعاً دوام کوي.
یو runner یوازې GitHub ته بهرته رسیدو ته اړتیا لري، نو دا زموږ په ترټولو ارزانه پلانونو کار کوي، په crypto تادیه کوي، او هیڅ KYC ته اړتیا نلري.
یو runner څه ته اړتیا لري
- ستاسو د جوړونو لپاره CPU او RAM. Small ($8/میاشت — ۴ vCPU، ۴ GB RAM، ۳۵ GB NVMe) د ډیری CI لپاره آرام ډیفالټ دی: د Node/Go/Rust جوړونې، د ازموینې سیټونه، د Docker تصویر جوړونې. درنه compilation یا موازي دندې؟ Medium یا یو Pro پلان ته لوړ کړئ.
- د کیشونو لپاره NVMe ديسک. د ځان-کوربهتوب ټوله موخه دوام دی — د وابستګیو کیشونه، د Docker layerونه، د جوړونې artifactونه د چلولو ترمنځ په ديسک پاتې کیږي. NVMe بیرته راوستل ګړندي ساتي.
- هیڅ dedicated IP اړین نه دی. runner GitHub ته د HTTPS له لارې وتلی؛ هیڅ شی ورته دننهورتګ ته اړتیا نلري. یو NAT پلان (له $3/میاشت) کافي دی. یوازې هغه وخت یو dedicated IP واخلئ چې تاسو یو شی هم ځان-کوربه کوئ چې ترافیک خدمت کوي.
یو runner جوړ کړئ (Ubuntu 24.04)
په خپل repo (یا org) کې runner جوړ کړئ: Settings → Actions → Runners → New self-hosted runner → Linux. GitHub یو د ښکته کولو کمانډ او یو یوځلی د راجستر نښه ښیي. په VPS:
# as a non-root user (the runner refuses to run as root)
adduser --disabled-password --gecos "" runner
su - runner
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
# register with the URL + token from the GitHub UI
./config.sh --url https://github.com/YOUR_ORG/YOUR_REPO --token YOUR_TOKEN
دا د یوه خدمت په توګه روان وساتئ
./run.sh په یوه terminal کې مه چلوئ — د یوه systemd خدمت په توګه یې نصب کړئ نو له بیا پیلونو ژوندی پاتې شي:
sudo ./svc.sh install runner
sudo ./svc.sh start
sudo ./svc.sh status
runner اوس د GitHub UI کې د Idle په توګه ښکاره کیږي او هره هغه دنده اخلي چې ورته هدف شوې.
دا د یوه workflow څخه وکاروئ
یوه دنده د runs-on سره خپل runner ته اشاره کړئ:
jobs:
build:
runs-on: self-hosted # or a custom label you set at registration
steps:
- uses: actions/checkout@v4
- run: make build && make test
د Docker-بنسټ دندې
Docker یو ځل نصب کړئ او ستاسو workflowونه کولی شي تصویرونه جوړ کړي یا د خدمت کانټینرونه وچلوي، د layer cache د چلولو ترمنځ دوام سره:
sudo apt update && sudo apt install -y docker.io
sudo usermod -aG docker runner # let the runner use Docker without sudo
د غورځولو وړ د-هرې-دندې جلاوالي لپاره، runner پخپله د یوه کانټینر دننه وچلوئ او هره کاله یې بیا جوړ کړئ — د بېباوره یا matrix جوړونو لپاره یوه عامه نمونه.
ولې EQVPS د CI لپاره
- فلیټ لګښت، بېشمیره دقیقې. هیڅ د-هرې-دقیقې میټرینګ نشته — یو بوخت pipeline د یوه بېکاره په څیر لګښت لري.
- تود کیشونه. وابستګۍ او د Docker layerونه د چلولو ترمنځ په NVMe پاتې کیږي؛ جوړونې ګړندي کیږي، نه ورو.
- په ~۶۰ ثانیو کې root، پاک تصویرونه. Ubuntu، Debian او نور د cloud-init له لارې؛ دقیقاً هغه toolchain نصب کړئ چې اړتیا یې لرئ.
- بې KYC، د crypto تادیه. راجستر لپاره بریښنالیک، تادیې لپاره USDC/USDT. د خوشې کیدو د کشمکش لپاره اضافي runnerونه پیل کړئ او وروسته یې لغوه کړئ — ناکارول شوی تادیه شوی وخت ستاسو بیلانس ته بیرته ورکول کیږي.
تبصرې
لا تبصرې نشته. لومړی اوسئ.