Alternatives ยท Render

Render alternative for bots, workers and small web services

Render is a good platform with one catch for hobby projects: a free web service spins down after fifteen minutes without traffic and a background worker is never free. A Discord bot is a background worker. Here it runs free, always on, from the same repository.

Free
256 MB bot or worker, always on
Web address
included on every tier: sleeps when idle on free, always on when paid
Deploy
From GitHub, build detected, redeploys on push
Regions
France, Montreal, Oregon, Singapore

Moving a Render service

  1. The repository is already on GitHub; connect it here.
  2. Copy the build and start commands from Render's settings into the app's page, or leave them blank and let the repository decide.
  3. Move environment variables across; the names stay the same.
  4. Deploy, then point your domain at the new address.

Bots and workers versus web services

A bot or a queue worker has no port and never spins down: that is the free tier. A web service gets an https address with its plan; on the free tier the address sleeps after idle time and wakes on the next request, much like Render's free plan, and a paid tier keeps it awake for nothing extra. A Render web service that is really a bot with a health endpoint bolted on can drop the endpoint.

Databases and files

Files under /data persist across deploys, which Render's free disk does not offer. A managed PostgreSQL, MySQL, MongoDB or Redis is one click and reachable over the private network only.

Frequently asked questions

Is there a render.yaml equivalent?

No blueprint file. The build and start commands, the branch and the environment live on the app's page, and the repository's own files drive detection.

Docker services?

A repository whose language the runtime table names deploys from source. Bring the app as source rather than as a Docker image.

How does the public address work?

Give the app a web address in the panel and it is served at https://name.fadehost.app behind the Cloudflare proxy with a certificate. It comes with the plan on every tier. On the free tier the address sleeps when nobody has used it for a while and wakes on the next request; on a paid tier it stays awake. Your own domain can point at it.

What happens on a deploy?

The repository is cloned at your branch, dependencies install, the build runs when there is one, the app starts. With auto-deploy on, every push does the same. The live console shows each step; a failed one is explained in plain words.

Related

Render alternative for bots, workers and small web services

Deploy from GitHub free