GitHub Actions Self-Hosted Runners on a VPS
Run GitHub Actions jobs on your own HostPapa VPS. Install the toolchain your builds need once, keep caches between runs, and deploy straight to the same server, with full root access, dedicated CPU and RAM, and NVMe storage.Plans as low as $2.95 per month2


Self-Hosted Runners Explained
What Is a GitHub Actions Self-Hosted Runner?
GitHub Actions automates your builds, tests, and deployments with workflows stored in your repository. Jobs run on runners, which are machines that pick up work from GitHub and execute your workflow steps.
GitHub provides hosted runners, but you can also connect your own server as a self-hosted runner. That gives you control over the hardware, operating system, and installed tools, lets dependency and build caches persist between runs, and lets jobs deploy directly to the server they run on.
A HostPapa VPS makes a strong self-hosted runner. Root access lets you install exactly the languages, build tools, and Docker setup your workflows need.
Why Choose HostPapa
A Reliable Home for Your CI/CD Runners
Your pipelines are only as fast as the machine running them. HostPapa VPS plans give your runners dedicated resources, NVMe storage, full control of the server, and support around the clock.
Full Root Access
NVMe Storage and Guaranteed Resources
Managed or Unmanaged
Support That Keeps You Moving
How to Set Up a Self-Hosted Runner on a HostPapa VPS
Connecting a HostPapa VPS to GitHub Actions takes six steps, and most of them happen in a few minutes.
Step 1: Create a dedicated user. Connect over SSH and create a non-root Linux user to run the runner service, then install the tools your workflows need, such as Node.js, Python, or Docker.
Step 2: Add a runner in GitHub. In your repository or organization, go to Settings, then Actions, then Runners, and choose New self-hosted runner. GitHub shows the download commands for Linux.
Step 3: Register the runner. Run the config.sh script with the URL and registration token GitHub provides, and add labels that describe the machine.
Step 4: Run it as a service. Install the runner as a service with sudo ./svc.sh install and start it with sudo ./svc.sh start so it keeps running after reboots.
Step 5: Target it in your workflows. Set runs-on: self-hosted or use your custom labels in a job so GitHub sends that job to your VPS.
Step 6: Keep it secure. GitHub recommends using self-hosted runners only with private repositories, because pull requests from forks of a public repository could run code on your machine. Install only the tools you need and keep the server updated.

Pick the Right Environment
Which Plan Fits Your Runners?
Choose an Unmanaged VPS if you want full control over the runner's operating system, toolchain, and Docker setup.
Choose a Managed VPS if you'd rather have our server administrators handle operating system patches, updates, and migration help.
Choose a dedicated server if you run many parallel jobs, heavy builds, or workloads that need full hardware isolation.
GitHub Actions Hosting Plans
If for any reason you’re not satisfied with our services, you can cancel at any time in the first 30 days of signup to receive a full refund for the service.
Domain fees are non-refundable.

We migrate your website & domain for Free.
(Yes, you read that right.)
Try our Web Hosting services risk-free for 30 days1. If you don't love us, we’ll let you return to your existing web host for Free!100% Satisfaction Guarantee
At HostPapa, we're so confident you'll love our services that we offer a 100% satisfaction guarantee. If you're not satisfied within your first 30 days with us, we'll make things right by giving you a full refund.1One Global Team
Need help?
The PapaSquad is here!
Can’t decide on the perfect domain name? Want to build an awesome website without breaking a sweat? Or maybe you need a hand configuring your business email? Whatever it is, our PapaSquad is always ready to save the day. So hit us up, and let us show you what we're made of!
Live Chat
Join a chat help session in seconds.
Prefer emails and tickets? Works for us.
Send us an email.Phone
Give us a call day or night.
Call us!
Consistently Awesome
We're not trying to brag (okay, maybe just a little), but with a 97% support satisfaction rate, we're basically the MVP of web hosting.
Frequently Asked Questions
All your questions in one place! Whether it’s helping you choose a domain name, walking you through our website builder, or configuring your cloud email system for your business, we’re here to help!
Still have questions?
Click below and directly reach one of our awesome support people.
Can I run a GitHub Actions runner on a HostPapa VPS?
Yes. Download the official runner application, register it with your repository or organization, and run it as a service on your VPS.
Does the runner need open inbound ports?
No. The runner connects outbound to GitHub over HTTPS and polls for jobs, so you don't need to open inbound ports for it.
Should I use a self-hosted runner with a public repository?
GitHub recommends against it, because pull requests from forks could run untrusted code on your server. Use self-hosted runners with private repositories.
Can I deploy to my VPS without a self-hosted runner?
Yes. A workflow on a GitHub-hosted runner can deploy to your VPS over SSH, using a deploy key stored in GitHub Actions secrets.
Can my runner build Docker images?
Yes. Install Docker Engine on the VPS and give the runner's user access, keeping in mind that Docker access is equivalent to root on that server.
Does HostPapa offer a money-back guarantee?
Yes. Every plan is backed by a 30-day money-back guarantee, so you can set up your runner and test performance risk-free.