🔍

Runner

Cloud Application Platform — Deploy your apps in minutes. Auto-scale, custom domain, automatic SSL — no server management needed.

How Does It Work?

Runner uses container orchestration technology (CapRover) on top of FlazHost's server cluster. Each application runs in an isolated container with horizontally scalable resources.

Deploy flow: Push code to GitHub → GitHub Actions builds image → image is pushed to FlazHost registry → cluster deploys new container → app goes live in seconds.

Quick steps:
  1. Connect your GitHub account
  2. Select the repository to deploy
  3. Choose a plan and app size
  4. System automatically injects Dockerfile + GitHub Actions workflow
  5. Push code → auto-deploy

Deploy Methods

Runner supports three deploy methods:

1. From GitHub (Custom Code)

Connect your GitHub repository. FlazHost automatically:

  • Injects Dockerfile into your repository (if not exists)
  • Injects GitHub Actions workflow (.github/workflows/deploy.yml)
  • Builds image on GitHub Actions, pushes to FlazHost registry
  • Deploys to Runner cluster — app goes live instantly

2. From Docker Image

Deploy directly from public or private image registries. Just enter the image name (e.g. nginx:latest, ghcr.io/username/app:v1) and the system will run it.

3. From Template (Starter)

Choose a ready-to-use template (WordPress, Strapi, n8n, Ghost, etc.) and deploy in one click. Templates include optimized Dockerfiles and configuration.

App Sizes (Replica)

Each application runs on one or more replicas. The replica size determines resource allocation per replica:

Size vCPU RAM Price/Replica/hr
Nano 0.128 vCPU 128 MB Rp —
Micro 0.256 vCPU 256 MB Rp —
Small 0.512 vCPU 512 MB Rp —
Medium 1.000 vCPU 1024 MB Rp —
Large 2.000 vCPU 2048 MB Rp —

Replicas are billed per hour (PAYG). Replica costs are additional to the monthly plan fee. Sleeping replicas (after 15-30 min idle) are not charged.

Plans & Pricing

Runner offers several subscription plans. Replica costs (PAYG) are billed separately from the plan fee.

Hobby

Free
  • Max apps: 1
  • Max replicas per app: 1
  • Sizes tersedia: nano
  • Custom domain: 1
  • Bandwidth 10 GB/bulan
  • Sleep idle 30 menit
  • Target: Belajar
Get Started
Popular

Personal

Rp 19.000 /mo

Rp 194.000/year

  • Max apps: 2
  • Max replicas per app: 1
  • Sizes tersedia: nano, micro
  • Custom domain: 2
  • Bandwidth 20 GB/bulan
  • Sleep idle 15 menit
  • Target: Blog/Portofolio
Get Started

Developer

Rp 59.000 /mo

Rp 602.000/year

  • Max apps: 5
  • Max replicas per app: 5
  • Semua app sizes tersedia
  • Autoscale enabled
  • Custom domain: 5
  • Bandwidth 50 GB/bulan
  • Backup mingguan
  • Target: Freelancer
Get Started

Start Up

Rp 129.000 /mo

Rp 1.316.000/year

  • Max apps: 15
  • Max replicas per app: 20
  • Semua app sizes tersedia
  • Autoscale enabled
  • Custom domain: 10
  • Bandwidth 200 GB/bulan
  • Backup harian
  • Support email
  • SLA uptime 99%
  • Target: UMKM
Get Started

Pro

Rp 249.000 /mo

Rp 2.540.000/year

  • Max apps: 30
  • Max replicas per app: 50
  • Semua app sizes tersedia
  • Autoscale enabled
  • Custom domain: 30
  • Bandwidth 500 GB/bulan
  • Backup harian
  • Support WA
  • SLA uptime 99.5%
  • Target: SaaS
Get Started

Business

Rp 799.000 /mo

Rp 8.150.000/year

  • Max apps: 100
  • Max replicas per app: 100
  • Semua app sizes tersedia
  • Autoscale enabled
  • Custom domain: unlimited
  • Bandwidth 2000 GB/bulan
  • Backup harian
  • Support WA prioritas
  • Dedicated cluster option
  • SLA uptime 99.9%
  • Target: Perusahaan
Get Started
Popular

Enterprise

Rp 1.999.000 /mo

Rp 20.390.000/year

  • Max apps: unlimited
  • Max replicas per app: unlimited
  • Semua app sizes tersedia
  • Autoscale enabled
  • Custom domain: unlimited
  • Bandwidth 10000 GB/bulan
  • Backup harian + retensi
  • Support WA + emergency
  • Dedicated cluster option
  • SLA uptime 99.95%
  • Target: Enterprise
Get Started

Auto-scale

Runner has two autoscale layers working together:

Layer 1: Replica Autoscale

For each app with autoscale enabled, the system monitors container CPU via CapRover API every ~1 minute:

  • Scale Up — If CPU > high threshold (e.g. 80%) sustained → add +step replicas (capped at max_replicas)
  • Scale Down — If CPU < low threshold (e.g. 20%) sustained → remove -step replicas (floored at min_replicas)
  • Cooldown — Wait time between scales to prevent flapping
  • Audit — All scale decisions are logged to paas_scale_events

Layer 2: Node Autoscale

The system also monitors average CPU across all cluster nodes every ~5 minutes via SSH (reads /proc/stat from host):

  • Add Node — If cluster avg CPU > threshold → add new worker node (capped at max_workers)
  • Remove Node — If avg CPU low for sustained period → drain + terminate idle workers (master never terminated)
  • Hard Cap — Maximum worker limit prevents runaway costs from misconfiguration

Safety & Reliability

  • If CapRover stats endpoint fails, autoscaler skips the tick (does NOT scale)
  • Cooldown prevents flapping
  • All decisions are logged to audit trail
class="doc-section" data-search="Auto-scale horizontal scaling min max replicas CPU threshold cooldown">

Auto-scale

Developer plan and above support autoscaling. The system automatically adjusts replica count based on CPU load (80% scale up threshold, 20% scale down threshold). Configurable settings:

  • Min/Max Replicas — Minimum and maximum replica count
  • CPU Threshold — CPU percentage to trigger scale up/down
  • Cooldown — Wait time before next scale event (default 120s)
  • Step Size — Number of replicas to add/remove per scale event

Custom Domain + Automatic SSL

Each app gets a default subdomain *.runner.flazhost.com. You can add your own custom domain — SSL (SSL otomatis) is issued and renewed automatically.

Custom domain limits: Personal (2 domains), Developer (5), Start Up (10), Pro (30), Business/Enterprise (unlimited).

GitHub Actions CI/CD

When you connect a GitHub repository, the system will:

  • Add a Dockerfile to your repository (if not present)
  • Add a workflow file .github/workflows/deploy.yml
  • Push to your repository

Every push to the branch triggers automatic build + deploy.

Link Resources

Attach a database or Object Storage to your app. Environment variables are automatically injected into the container.

  • Database: Choose existing MySQL/PostgreSQL or create new (PAYG)
  • Object Storage: Link S3-compatible bucket for files/assets
  • Auto-inject: DATABASE_URL, S3_ACCESS_KEY, etc. are available in the container

Monitoring

Monitor app resources in real-time through the built-in monitoring dashboard. Available metrics:

  • CPU Usage (%)
  • Memory Usage (MB)
  • Network I/O
  • Container status & logs

Starter Templates

Deploy popular apps in one click: WordPress, Strapi CMS, n8n (automation), Activepieces, Ghost, Coolify, Dokploy, and more. Templates include optimized Dockerfiles.

Environment Variables & Secrets

Manage environment variables and secrets through the dashboard. Variables like DATABASE_URL, API keys, and other configuration can be set without hardcoding in the repository.

Backup & Restore

Runner has a multi-layered automatic backup system:

App Backup (User)

Per-app backups are stored to the customer OSS bucket. Backups cover app data volumes and configuration.

  • Automatic Backup — Weekly/daily backups depending on plan
  • Cluster Backup (Admin) — Full cluster backup for DR/migration
  • Failed App Auto-Retry — If provision fails, system auto-retries
class="doc-section" data-search="Backup Restore weekly daily volume data app">

Backup & Restore

Automatic backups based on plan:

  • Developer — Weekly backup
  • Start Up, Pro, Business, Enterprise — Daily backup

Backups cover app volume data and can be restored through support.

Persistent Storage

Each app gets a persistent volume for data storage. Default size equals RAM allocation. Volumes can be upgraded for an additional fee.

Cron Jobs & Worker Apps

Runner supports background workers and cron jobs. You can deploy worker apps that run continuously, or scheduled periodic tasks.

Quota Enforcement

The system automatically enforces plan limits daily:

  • Downgrade Violations — If user downgrades but still has apps exceeding new limits, apps are scaled to 0 or suspended
  • App Limit — Maximum apps per plan are enforced on creation
  • Resource Limit — Total CPU/RAM limited according to plan

SLA Uptime

Plan SLA Support
Hobby - DeveloperBest effortEmail + documentation
Start Up99%Email support
Pro99.5%WhatsApp + email
Business99.9%Priority WA + dedicated cluster
Enterprise99.95%WA + emergency + dedicated cluster

Get Started with Runner

You can start using Runner from the Apps page in your FlazHost dashboard. Click "Create New App" and follow the wizard. The free Hobby plan is available for learning and experimentation without a credit card.