Donal McBreen 307750ff70 Build from within a git clone by default
Docker does not respect the .dockerignore file when building from a tar.

Instead by default we'll make a local clone into a tmp directory and
build from there. Subsequent builds will reset the clone to match the
checkout.

Compared to building directly in the repo, we'll have reproducible
builds.

Compared to using a git archive:
1. .dockerignore is respected
2. We'll have faster builds - docker can be smarter about caching the
build context on subsequent builds from a directory

To build from the repo directly, set the build context to "." in the
config.

If there are uncommitted changes, we'll warn about them either being
included or ignored depending on whether we build from the clone.
2024-05-20 09:30:56 +01:00
2024-03-20 10:23:02 +00:00
2023-08-22 08:24:31 -07:00
2024-01-09 11:13:11 +00:00
2023-08-22 08:24:31 -07:00
2023-08-22 08:24:31 -07:00
2023-08-22 08:24:31 -07:00
2024-05-07 09:44:11 +01:00
2024-01-09 08:21:10 -08:00
2023-01-07 15:32:25 +01:00
2023-09-16 16:02:54 -07:00

Kamal: Deploy web apps anywhere

From bare metal to cloud VMs, deploy web apps anywhere with zero downtime. Kamal has the dynamic reverse-proxy Traefik hold requests while a new app container is started and the old one is stopped. Works seamlessly across multiple hosts, using SSHKit to execute commands. Originally built for Rails apps, Kamal will work with any type of web app that can be containerized with Docker.

➡️ See kamal-deploy.org for documentation on installation, configuration, and commands.

Contributing to the documentation

Please help us improve Kamal's documentation on the the basecamp/kamal-site repository.

License

Kamal is released under the MIT License.

Description
Deploy web apps anywhere.
Readme 4 MiB
Languages
Ruby 98.1%
Dockerfile 1%
Shell 0.9%