Migrating a Kamal app to a new destination name
19:56 09 Mar 2026

I have been working on a Kamal app with only a deploy.yml config and I have just split its contents into deploy.production.yml and deploy.staging.yml. The new staging environment deployed successfully, but the production destination app functions as a new app separate from the destinationless default app, which means that, for example:

  • kamal details -d production does not list the existing production app container.

  • kamal app exec -d production can't run commands on it.

  • I assume kamal deploy -d production will also fail due to port conflicts.

This behavior doesn't surprise me, but I would still like to start using production as the destination and to avoid downtime in our next deployment.

Is there a way to associate an old Kamal app with a new destination, so that my upcoming kamal deploy -d production command can replace it without downtime and kamal-proxy will cleanly re-route traffic after the new container is healthy?

deployment kamal