Deployment
Deploy tinycrab to Docker, Railway, Fly.io, or Render.
Docker
Run tinycrab in a container:
docker run -p 8080:8080 \
-e OPENAI_API_KEY=sk-xxx \
ghcr.io/jt-wang/tinycrabDocker Compose
version: '3.8'
services:
tinycrab:
image: ghcr.io/jt-wang/tinycrab
ports:
- "8080:8080"
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
volumes:
- ./data:/app/dataRailway
Deploy to Railway using the GHCR image:
- Create a new project on Railway
- Select "Deploy from Docker Image"
- Use image:
ghcr.io/jt-wang/tinycrab - Add environment variable
OPENAI_API_KEY
Fly.io
Deploy to Fly.io:
# Install flyctl
curl -L https://fly.io/install.sh | sh
# Login
fly auth login
# Launch
fly launch --image ghcr.io/jt-wang/tinycrab
# Set secrets
fly secrets set OPENAI_API_KEY=sk-xxxRender
Deploy to Render:
- Create a new Web Service
- Select "Deploy an existing image from a registry"
- Use image:
ghcr.io/jt-wang/tinycrab - Add environment variable
OPENAI_API_KEY
Communicate with Your Agent
Once deployed, communicate with your agent via HTTP:
$ curl -X POST https://your-deployment.com/chat \
-H "Content-Type: application/json" \
-d '{"message": "Hello"}'
# → {"response": "Hello! How can I help?",
# "session_id": "session-a1b2c3d4"}
# Continue conversation with session_id
$ curl -X POST https://your-deployment.com/chat \
-H "Content-Type: application/json" \
-d '{"message": "What did I say?", "session_id": "session-a1b2c3d4"}'