Render
Render supports deploying Docker images as Web Services.
Steps
1. Create a Web Service
In the Render dashboard, click New → Web Service → Deploy an existing image from a registry.
Enter the image URL:
ghcr.io/awaitstep/awaitstep:latestSet the Instance Type to at least Starter (free tier does not support persistent disks).
2. Set environment variables
First, generate two secret keys:
bash
openssl rand -hex 32 # use as TOKEN_ENCRYPTION_KEY
openssl rand -hex 32 # use as BETTER_AUTH_SECRETThen under Environment Variables, add:
bash
TOKEN_ENCRYPTION_KEY=your-first-generated-key
BETTER_AUTH_SECRET=your-second-generated-key
BETTER_AUTH_URL=https://awaitstep.onrender.com
PORT=8080
# Auth — configure at least one
# GITHUB_CLIENT_ID=
# GITHUB_CLIENT_SECRET=
# GOOGLE_CLIENT_ID=
# GOOGLE_CLIENT_SECRET=
RESEND_API_KEY=Set BETTER_AUTH_URL to your Render service URL or a custom domain.
3. Configure storage
Under Disks, add a persistent disk and mount it at /app/data.
4. Set the port
Set the Port to 8080.
5. Create the service
Click Create Web Service.
Notes
- Render's free tier spins down after inactivity. Use a paid plan for always-on availability.
- Render provides a managed PostgreSQL service. Set
DATABASE_URLto the internal connection string from the database dashboard. - Set the Health Check Path to
/api/healthin the service settings.