Deploy Your First App
Take a Dockerized GitHub repository from source code to a live Hatch URL. This is the shortest path from repo to production.
What you will deploy
Hatch deploys one project as one running service. The project points to a GitHub repo, a branch, a Dockerfile, a container port, and a subdomain. Hatch turns those settings into a built image, ECS service, target group, listener rule, and HTTPS URL.
Source
repoGitHub repository, branch, Dockerfile path
Runtime
configPort, health check, env vars
Output
liveLive Hatch URL with logs and deployment history
Repository checklist
A Dockerfile is committed at the root or a known subpath.
Check this before deploying. Most first-deploy failures come from Dockerfile, port, or health check mismatches.
The container listens on one stable port.
Check this before deploying. Most first-deploy failures come from Dockerfile, port, or health check mismatches.
The app binds to 0.0.0.0 inside the container.
Check this before deploying. Most first-deploy failures come from Dockerfile, port, or health check mismatches.
A health check path returns 200-399 when the app is ready.
Check this before deploying. Most first-deploy failures come from Dockerfile, port, or health check mismatches.
Runtime secrets are provided as environment variables, not baked into the image.
Check this before deploying. Most first-deploy failures come from Dockerfile, port, or health check mismatches.
Create the project
Open the Hatch console, click New, choose a GitHub repository, then confirm the branch and Dockerfile path. If the Dockerfile declares an EXPOSE port, Hatch will use it as the service port.
Runtime contract
branch main
dockerfile Dockerfile
port detected from EXPOSE
health check /Hatch reads the Dockerfile first. If no port is declared, use the port your process actually listens on. Hatch manages the underlying compute allocation for the service.
Deploy and watch logs
Click Deploy Manually. Hatch streams the build and deploy logs in real time so you can see exactly where the app is: queued, building, deploying, or live.
Job received
Syncing source code...
Starting Docker build...
Image successfully pushed
Registering task definition...
Updating routing rules...
Task health: 1 running, 0 pending, target healthy
Deployment live at: https://your-app.hatchcloud.xyzVerify production
Open the generated Hatch URL and test the path your users will hit. If the app does not load, check logs first, then use the troubleshooting guide.