Migration from Render to CreateOS
Use this guide when your app runs on Render as a web service, static site, worker, or cron job.
What changes
| Render concept | CreateOS equivalent |
|---|---|
| Web service | CreateOS deployment |
| Static site | Static build deployment |
| Background worker | Worker service or separate deployment |
| Cron job | CreateOS cron job |
| Environment group | CreateOS environment variables |
| Persistent disk | External storage or a supported persistent storage setup |
| Custom domain | CreateOS domain mapping |
Step by step
- Open the Render service and collect:
- Service type
- Repository and branch
- Build command
- Start command
- Runtime
- Port
- Environment variables or environment group
- Health check path
- Custom domains
- Check whether the project has a
render.yamlfile. If it does, use it as the migration checklist. - Sign into createos.sh/app.
- Click Deploy.
- Import the same GitHub repository.
- Choose Manual and enter the known build/start settings, or use Build with AI for framework detection.
- Add environment variables.
- Configure the port and deploy.
- Verify the app from the CreateOS deployment URL.
Render-specific checks
- Convert Render background workers into separate CreateOS services.
- Convert Render cron jobs into CreateOS cron jobs.
- If the service uses a persistent disk, move that data to a supported persistent storage option before switching traffic.
- If the service uses Render-managed Postgres or Redis, migrate the database or keep using the external connection string.
- Update webhook URLs and callback URLs after the CreateOS domain is live.
Cutover
- Deploy and verify the CreateOS service.
- Run smoke tests against production-like data.
- Add the custom domain in CreateOS.
- Update DNS.
- Keep the Render service available until traffic has fully moved.