Quick Start¶
Get Doable running on your machine in under 5 minutes.
The fastest path: Docker¶
You only need Docker (version with Compose v2 — almost any recent install).
When prompted, press Enter to default to localhost. The script will:
- Generate
docker/.envwith secure random secrets. - Build the Docker images.
- Start PostgreSQL, the API, the WebSocket server, and the Next.js web app.
- Configure nginx with a self-signed SSL certificate.
When it finishes, open https://localhost and accept the self-signed certificate warning.
Why HTTPS even on localhost? Some browser features Doable uses (clipboard, service workers, modern crypto) require a secure context.
Add an AI key (optional but recommended)¶
Without an AI key Doable still runs — you can browse the dashboard, sign up, create projects — but the chat agent has nothing to talk to. Add at least one of these to docker/.env then restart:
# Pick one:
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
# Or, to use the GitHub Copilot SDK:
COPILOT_CLI_PATH=/usr/local/bin/copilot
Restart the API container after editing:
See AI / Providers for details on each.
Stop / clean up¶
# Stop containers (data preserved)
docker compose -f docker/docker-compose.yml down
# Stop and DELETE all data (database, projects, thumbnails)
docker compose -f docker/docker-compose.yml down -v
Common issues¶
| Symptom | Fix |
|---|---|
| Browser shows certificate warning | Expected for self-signed SSL. Accept it. |
502 Bad Gateway right after start |
Wait 30 seconds — the API is still booting. |
Set JWT_SECRET in docker/.env |
Re-run ./docker/setup.sh or generate manually with openssl rand -hex 32. |
| Port 80/443 already in use | Stop your existing nginx/apache, or run Compose without nginx and proxy yourself. |
More in Troubleshooting.
What’s next?¶
- Walk through your first project.
- Read about the architecture.
- If you want to hack on the code, set up a local development environment.
- Ready to deploy on a real server? See Production Deployment.