Agent skill
kamal-deploy
Deploy Docker applications using Kamal 2 with zero-downtime and automatic SSL. Use this skill when (1) setting up new Kamal deployments, (2) generating deploy.yml configuration, (3) deploying apps that lack health endpoints (using Caddy workaround).
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/devops/kamal-deploy-jalen0x-substore-kamal
SKILL.md
Kamal 2 Deployment
Workflow
Ask user for:
- Domain — e.g.,
app.example.com(service name:app_example_com) - Server IP(s)
- Health endpoint — Does app return 200 on
/upwithout auth?
Generate config/deploy.yml
yaml
service: {{DOMAIN_UNDERSCORED}}
image: jalen0x/{{DOMAIN_UNDERSCORED}}
servers:
web:
hosts:
- {{SERVER_IP}}
proxy:
ssl: true
host: {{DOMAIN}}
registry:
username: jalen0x
password:
- KAMAL_REGISTRY_PASSWORD
ssh:
user: ubuntu
builder:
arch: amd64
Health Endpoint
App must respond 200 on /up at port 80 (default).
Custom path: Add healthcheck.path to proxy config.
No health endpoint: Use Caddy. Copy templates from assets/ and customize:
assets/Caddyfile→ projectCaddyfileassets/start.sh→ projectstart.sh
Generate Dockerfile:
dockerfile
FROM {{BASE_IMAGE}}
RUN apk add --no-cache caddy
COPY Caddyfile /Caddyfile
COPY start.sh /start.sh
RUN chmod +x /start.sh
ENTRYPOINT ["/bin/sh", "/start.sh"]
Commands
bash
kamal setup # First-time
kamal deploy # Deploy
Didn't find tool you were looking for?