kamal-deployment

Deploy Kamal-based zero-downtime releases to staging and production.

7|3|Updated May 25, 2015
One-click install
npx skills add https://github.com/rockcodelabs/kw-app --skill kamal-deployment
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: kamal-deployment
Source: https://github.com/rockcodelabs/kw-app/tree/main/.agents/skills/kamal-deployment
Command: npx skills add https://github.com/rockcodelabs/kw-app --skill kamal-deployment

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill enables zero-downtime deployments of kw-app using Kamal to staging (Raspberry Pi ARM64) and production (VPS x86_64), ensuring services stay online during releases.

Core Features & Use Cases

  • Zero-downtime rolling restarts with Kamal for staging and production.
  • Automated migrations before deploying new containers.
  • Docker-based app container deployment with SSH-based remote execution.
  • Console access and troubleshooting workflows for both staging and production environments.

Quick Start

Use Kamal to deploy to staging: kamal deploy -d staging Verify deployment status: kamal app details -d staging Check logs during deployment: kamal app logs -d staging --tail 100 Open a staging Rails console: kamal app exec -d staging -i --reuse "bin/rails console" Deploy to production after staging passes: kamal deploy -d production

Frequently Asked Questions about kamal-deployment

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy a Docker app to a Raspberry Pi staging environment with zero downtime?▼

You can deploy a Docker app to a Raspberry Pi staging environment with zero downtime using Kamal. It performs rolling restarts on ARM64 architecture, keeping staging services online during the release.

What do I need to set up before running Kamal deployments for my application?▼

Before running Kamal deployments, you need Ruby 3.2.2 managed via chruby, Kamal installed, configured SSH keys for remote access, and environment-specific deploy configuration files in config/deploy.*.yml.

How does Kamal handle zero-downtime production deployments across different server architectures?▼

Kamal handles zero-downtime production deployments by executing Docker-based container releases over SSH. It supports rolling restarts across ARM64 staging on Raspberry Pi and x86_64 production on VPS.

How do I access a Rails console on a remote server after deploying with Kamal?▼

To access a Rails console on a remote server after deploying with Kamal, use the command kamal app exec -d staging -i --reuse "bin/rails console" for an interactive session within the deployed container.

Does Kamal run database migrations automatically before deploying new Docker containers?▼

Yes, Kamal runs automated database migrations before deploying new Docker containers. This ensures your database schema is updated safely prior to the zero-downtime rolling restart of your application.

What is the best way to troubleshoot a failed Kamal deployment on a VPS?▼

The best way to troubleshoot a failed Kamal deployment on a VPS is to check container logs using kamal app logs --tail 100 and verify service status with kamal app details across your x86_64 production environment.