☁️Chapter 5 · Setup · 15 min read

Host Your Bot 24/7 on a Free VPS

By Bathyr Devs · Published June 24, 2026

15 minutes. A VPS (Virtual Private Server) is a cloud computer you rent that stays on 24/7. Your bot needs one if you want to catch launches at 3 AM. Google Cloud for Devs gives every new account $300 in free credits, enough for about 3 months on the spec we recommend.


Why a VPS?

Without VPSWith VPS
Bot only runs when your laptop is onBot runs 24/7, sleep through the launches
Your home internet drops = missed signalsDatacenter has 99.9% uptime
Slow latency to Solana mainnet (often 150-300ms)Datacenter in Frankfurt/Amsterdam = 20-50ms latency
Your computer fan screams during launchesBot CPU stays on the VPS, your laptop is silent
Risky: laptop sleep → monitor doesn't fire stop-lossBot is always alive to fire your TP/SL

The latency difference alone is 3-6x faster signals.


The minimum specs

ResourceMinimumWhy
RAM16 GBNode.js + Telegraf + 200-mint scoring cache + ML model
CPU2 vCPUOne for the engine, one for the bot
Storage50 GB SSDOS + Node + 6 months of SQLite history
BandwidthUnlimited or ≥1 TB/moWebSocket traffic adds up
OSUbuntu 22.04 LTS / Windows 11 / Windows Server 2016+All compatible, simplest setup
RegionFrankfurt or Amsterdam (EU)Lowest latency to Solana mainnet validators

💡 Don't cheap out on RAM. 4 or 8 GB will work for a few hours then start swap-thrashing during launch storms. 16 GB is the sweet spot.


Best VPS providers, ranked

Provider16GB / 2vCPU / 50GB PriceFree trialBest for
🥇 Google Cloud (e2-standard-2)$48/mo$300 credit (~3 months free)Beginners, best free trial in the industry
🥈 Hetzner Cloud (CCX22)€21/mo (~$23)NonePower users, best price/performance, EU only
🥉 DigitalOcean (Premium AMD)$74/mo$200 credit (60 days)Mid-tier, very user-friendly
Vultr (Cloud Compute HF)$48/mo$100 credit (30 days)Mid-tier, very fast NVMe
Contabo (VPS S NVMe)$7.50/moNoneBudget option, underspecced but cheap

Our recommendation

Start with Google Cloud. Reasons:

  1. $300 free credit is enough for ~3 months on e2-standard-2 (16 GB / 2 vCPU).
  2. No credit-card charges during the trial, you must explicitly upgrade to paid before they bill you.
  3. Frankfurt region (europe-west3) consistently hits sub-50ms latency to Solana mainnet RPC nodes.

When the trial ends, switch to Hetzner CCX22 for the best ongoing price (~$23/month for the same specs).


Walkthrough, Google Cloud free trial

Part 1, Sign up for free credit

  1. Go to https://cloud.google.com/free
  2. Click "Get started for free" (big blue button).
  3. Sign in with the Google account you want to use.
  4. Fill in:
  • Country: your country
  • Account type: Individual
  • Name and address: real info (they check)
  • Payment method: a real credit/debit card. You will not be charged, it's only for identity verification.
  1. Click Start my free trial.
  2. 🎉 You now have $300 in credits valid for 90 days.

Part 2, Create the VPS

  1. After signup you land on the Google Cloud Console.
  2. In the top search bar, type Compute Engine and click the result. (If it asks you to enable the Compute Engine API, click Enable and wait ~30 seconds.)
  3. Click ➕ Create Instance.
  4. Fill in this exact configuration:
SettingValue
Namepumpstriker
Regioneurope-west3 (Frankfurt)
Zoneeurope-west3-a (default)
Machine familyGeneral-purpose
SeriesE2
Machine typee2-standard-2 (2 vCPU, 8 GB) OR e2-standard-4 (4 vCPU, 16 GB) for the recommended 16 GB
Boot diskClick ChangeUbuntu 22.04 LTS Minimal, size: 50 GB, type: Balanced persistent disk
Firewall✅ Allow HTTP traffic, ✅ Allow HTTPS traffic
  1. Scroll to the bottom. The monthly estimate should show ~$25-50. Click Create.
  2. Wait 60 seconds. The VM appears in the list with a green check and an External IP (e.g. 35.198.123.45). Copy that IP.

Part 3, Connect to your VPS

  1. In the VM list, click the SSH button on your pumpstriker row. A browser-based terminal opens. ✅
  2. You're now logged into your Ubuntu server. Run whoami to confirm.

💡 Want to use a desktop SSH client instead? Install Termius (free, all platforms) or use OpenSSH from your terminal.

Part 4, Install PumpStriker on the VPS

In the SSH terminal, copy-paste this block, it installs everything in one shot:

# Update system sudo apt update && sudo apt upgrade -y # Install Node 20, Git, build tools, Python curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt install -y nodejs git build-essential python3 python3-pip # Install PM2 globally (for 24/7 supervision) sudo npm install -g pm2 # Confirm versions node --version # v20.x npm --version git --version pm2 --version

Then upload the PumpStriker code. Easiest method: use SCP from your local machine (replace 35.198.123.45 with your VPS IP):

cd ~/Desktop tar -czf pumpstriker.tar.gz "PumpStriker Bot" scp pumpstriker.tar.gz <your-google-user>@35.198.123.45:~/

Back on the VPS:

tar -xzf pumpstriker.tar.gz mv "PumpStriker Bot" pumpstriker cd pumpstriker npm install npm run build

Part 5, Configure .env on the VPS

The .env file from your local machine was included in the tarball, so it's already there. Verify it:

cat .env | head -20

If you need to edit it:

nano .env # Edit, then Ctrl+O, Enter, Ctrl+X to save

Part 6, Start the bot under PM2 (24/7 mode)

pm2 start "npm run engine" --name pumpstriker-engine pm2 start "npm run bot" --name pumpstriker-bot pm2 save pm2 startup

The last command prints a sudo line, copy and run it. This makes PM2 boot automatically if the VPS ever restarts.

Part 7, Verify

pm2 list

You should see both pumpstriker-engine and pumpstriker-bot as online. Watch live logs:

pm2 logs --lines 50

Within a minute you should see token-spotted lines and your Telegram bot should post a startup message in your chat. ✅


Lock down the VPS (5 min, very important)

Set up a basic firewall

sudo ufw allow 22/tcp # SSH (don't lock yourself out!) sudo ufw allow 443/tcp # HTTPS (only if you expose the dashboard publicly) sudo ufw enable # answer 'y' sudo ufw status

Disable password SSH (use keys only)

sudo nano /etc/ssh/sshd_config # Find and change: PasswordAuthentication no # Save (Ctrl+O, Enter, Ctrl+X) sudo systemctl restart ssh

⚠️ Before you do this, make sure you can log in via SSH key, not password. Google Cloud's browser SSH uses keys automatically, so you should be safe.

Set automatic security updates

sudo apt install -y unattended-upgrades sudo dpkg-reconfigure --priority=low unattended-upgrades

Cost monitoring

Google Cloud will warn you when you've used 50%, 90%, and 100% of your $300 credit. To check current usage: Console → Billing → Overview. To avoid surprises: Console → Billing → Budgets & alerts → set a $250 budget alert with email notification.


When the free trial ends

A) Upgrade Google Cloud to paid

In Billing, click Activate full account. You'll be charged ~$25-50/month for the same VM.

B) Migrate to Hetzner (cheaper)

  1. Sign up at https://www.hetzner.com/cloud.
  2. Create a CCX22 server (4 cores, 16 GB, 80 GB NVMe) in Falkenstein or Helsinki for €21/mo.
  3. SSH in, repeat Part 4 from this chapter.
  4. SCP your .env and data/ folder from Google to Hetzner.
  5. Start PM2.
  6. Then shut down the Google Cloud VM to stop billing.

➡️ Next chapter: 6. Run the Bot, Your First Trade, we fund a wallet and take our first signal.

PumpStriker, the self-hosted Solana memecoin striker.

Your keys. Your machine. One-time $350, MIT licensed, no subscription.

See pricing →