When to use
✅ Good for
- Go microservices
- Rust web APIs
- Elixir/Phoenix apps
- Custom runtimes
- Existing Dockerized apps
⚠️ Consider alternatives
- Python APIs → use
backend-service - Next.js sites → use
static-site - Fullstack apps → use
web-app
Quick start
Project structure
Requirements
Your Dockerfile must:1
Expose the correct port
Match the
port in runtm.yaml (default: 8080)2
Implement health endpoint
GET /health must return HTTP 2003
Start quickly
Application must be ready within 10 seconds
Manifest
The docker template uses a minimal manifest:runtm.yaml
The
docker template doesn’t require a runtime field since you provide your own Dockerfile.Example Dockerfiles
- Go
- Rust
- Elixir
Environment variables
Declare environment variables in your manifest:runtm.yaml
Machine tiers
Set in your manifest:
runtm.yaml
Deployment checklist
1
Replace Dockerfile
Replace the placeholder with your application build
2
Implement health endpoint
Ensure
GET /health returns HTTP 2003
Test locally
4
Update discovery metadata
Edit
runtm.discovery.yaml and replace all # TODO: placeholders5
Deploy