---
title: Migrating from Render
description: Move a Render web service to Atlasflow.
order: 1
---

Render web services and Atlasflow projects work similarly: both deploy a container from a Git repository. The main changes are the fixed port and moving from `render.yaml` to project settings.

## What maps over

| Render                    | Atlasflow                                                           |
| ------------------------- | ------------------------------------------------------------------- |
| Web service from Git      | [Project](/docs/concepts/projects.md) from GitHub                      |
| Docker or native runtime  | [Dockerfile or automatic builds](/docs/guides/supported-frameworks.md) |
| Environment groups / vars | [Environment variables](/docs/guides/environment-variables.md)         |
| Custom domains            | [Custom domains](/docs/networking/custom-domains.md)                   |

## Steps

1. **Create a project** from your GitHub repository.
2. **Match the build.** If you used a Dockerfile on Render, point Atlasflow at the same [Dockerfile path](/docs/guides/configuration.md). If you used a native runtime, rely on [automatic builds](/docs/guides/supported-frameworks.md) or add a Dockerfile.
3. **Set the port to 3000.** Render uses a dynamic `PORT`; Atlasflow expects **port 3000** bound to `0.0.0.0`.
4. **Replace `render.yaml`.** Atlasflow doesn't read a config file; set the root directory, Dockerfile path, branch, and variables in [project settings](/docs/guides/configuration.md).
5. **Health check on `/`.** Render lets you set a custom health check path; Atlasflow checks `GET /`. Make sure `/` returns a 2xx status. See [Container requirements](/docs/guides/container-requirements.md).
6. **Recreate variables**, deploy, test the preview URL, then move your domain.

## Things to know

- Background workers and cron jobs map to separate [projects](/docs/guides/monorepos.md) running the relevant command as a long-lived process.
- Managed databases are [coming soon](/docs/products.md); bring your own for now.

## Next steps

- [Configuration](/docs/guides/configuration.md): replace `render.yaml` with project settings.
- [Container requirements](/docs/guides/container-requirements.md): port and health check.
- [Custom domains](/docs/networking/custom-domains.md): move your domain.