A declarative way to pre-package and ship applications on Dokku.
Install the latest release with the quick install script (Linux, macOS, or a POSIX shell on Windows):
curl -fsSL https://raw.githubusercontent.com/dokku/docket/main/install.sh | shOr via Homebrew:
brew install dokku/repo/docketOr with the Go toolchain:
go install github.com/dokku/docket@latestSee the Getting started guide for all channels, including prebuilt binaries and Debian/Ubuntu packages.
Describe the desired state of your app in a tasks.yml recipe:
---
- tasks:
- dokku_app:
app: inflector
- dokku_git_sync:
app: inflector
remote: http://github.com/cakephp/inflector.cakephp.orgPreview what would change, then apply it:
docket plan # show what apply would do, without changing anything
docket apply # make the changes needed to match the recipeRunning docket apply again is a no-op when the server already matches the recipe.
- Getting started -- why docket, installation, and your first recipe
- Command reference -- every command and flag
- Recipes -- the recipe file format, plays, and multi-app recipes
- Inputs -- parameterize a recipe with variables and
--vars-file - Task envelope -- tags, conditionals, loops, and error handling per task
- Remote execution -- drive a remote Dokku server over SSH
- JSON output -- the
--jsonevent schema forapplyandplan - Writing tasks -- contribute a new task type
- Tasks -- reference for every task type