Apps
← Back to Apps
-
Environment Variables
Add Domain
HTTPS
Auto-provision Let's Encrypt certificate
ⓘ DNS Setup Guide
After adding a custom domain, configure your DNS provider with one of the following records:
TypeNameValueUse Case
A@ or subdomain3.39.191.178Root domain (example.com)
CNAMEsubdomainapp.cloud5.socialbrain.co.krSubdomain (app.example.com)
DNS changes may take up to 24-48 hours to propagate. Enable HTTPS toggle above for automatic SSL certificate via Let's Encrypt.
Deploy
Runtime
Loading...
Settings
Account
SSH Keys
SSH keys are used to deploy private GitHub repositories. Generate a key here, then add the public key to your repo's Deploy Keys.
Billing
Domains
Monitor
Documentation

Welcome to Cloud5

Cloud5 is a self-hosted PaaS that lets you deploy apps from GitHub in minutes. No Docker knowledge, no CI/CD pipelines, no config files needed.

Quick Start

  1. Sign in with your Google account
  2. Click + Deploy in the top bar
  3. Paste your GitHub repository URL
  4. Select a Build Type (Nixpacks auto-detects most stacks)
  5. Click Deploy and wait for the build

Your app will be live with a public URL within minutes.

Supported Stacks

Nixpacks auto-detects: Node.js, Python, Go, Ruby, PHP, Rust, Java, and more. You can also use a custom Dockerfile.

Build Types

Nixpacks (Recommended) — Auto-detects your stack and builds the right container.

Static — For HTML/CSS/JS sites. Served via Nginx.

Dockerfile — Use your own Dockerfile for full control.

Environment Variables

Go to your app detail, click Environment tab, add key-value pairs, and click Save & Redeploy.

PORT=3000
DATABASE_URL=postgres://user:pass@host:5432/db
NODE_ENV=production

Private Repositories

  1. In Deploy modal, select Private
  2. Generate an SSH key or select existing one
  3. Copy public key to GitHub repo's Deploy Keys
  4. Deploy as usual

Auto Deploy (Webhook)

Each app has a Webhook URL in the Overview tab. Add it to GitHub Webhooks for auto-redeploy on git push.

Auto-assigned Domains

Every deployed app gets a public URL via *.traefik.me. No configuration needed.

Custom Domains

  1. Go to app detail, click Domains tab
  2. Enter your domain and port
  3. Add a DNS A record pointing to 3.39.191.178
  4. Enable HTTPS for automatic Let's Encrypt SSL

Managing Domains

View all domains across your apps on the Domains page.

Server Monitoring

The Monitor page shows real-time server health:

  • CPU — Current load average
  • Memory — Used vs total RAM
  • Disk — Used vs total storage
  • Dokploy — Connection status

Data refreshes automatically every 30 seconds.

Alerts

When an app's status changes, an alert appears in the bell icon. Check top bar for recent alerts.

App Resources

Each app's Overview tab shows container-level CPU and memory usage.

What languages are supported?

Nixpacks supports Node.js, Python, Go, Ruby, PHP, Rust, Java, .NET, and more. Use a Dockerfile for anything else.

How do I set the PORT? (Important!)

Cloud5 automatically sets a PORT environment variable when deploying. Your app must read this variable:

Python: port = int(os.environ.get("PORT", 8000))
Node.js: const port = process.env.PORT || 3000
Go: port := os.Getenv("PORT")

If you see a Bad Gateway error, the PORT is likely mismatched. Go to Environment tab and verify the PORT value matches your app's listening port.

I'm getting Bad Gateway

This means your app is running but not responding on the expected port. Check:

  1. Your app reads the PORT environment variable
  2. The PORT value in Environment tab matches your app's actual port
  3. Your app binds to 0.0.0.0, not 127.0.0.1 or localhost

Build is failing

Check the Logs tab → Deploy log for detailed error messages. Common issues:

  • Nixpacks can't detect the language → Add a Dockerfile
  • Missing dependencies → Ensure package.json, requirements.txt, etc. are in the repo root
  • Build timeout → Reduce dependencies or optimize the build

Private repo not showing?

Connect your GitHub account first. Go to the Deploy modal → GitHub Repository tab → Connect GitHub.

External API needs IP whitelist

If your external service (e.g., Kiwoom Securities, payment APIs) requires IP whitelisting, register Cloud5's server IP: 3.39.191.178

Can I use a database?

Use an external database (Supabase, PlanetScale, Neon, MongoDB Atlas) and connect via environment variables. See the DB Connection Guide in Environment tab.

How do I redeploy?

Click Redeploy in app detail, or set up a GitHub Webhook for auto deploys on every git push.

My app suddenly stopped working

Try Redeploy first. If it persists, check Logs tab for errors. Cloud5 runs health checks every 5 minutes and will alert you if your app goes down.

What are the limits?

Free: 2 apps, no time limit, no credit card. Pro: 10 apps, custom domains. Team: Unlimited apps.

Build timeout: 5 minutes. Memory per app: 512MB.