Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
75 lines (52 sloc) 2.74 KB

Docker Local Scheduler

Subcommands new as of 0.12.12

scheduler-docker-local:report [<app>] [<flag>]              # Displays a scheduler-docker-local report for one or more apps
scheduler-docker-local:set <app> <key> (<value>)            # Set or clear a scheduler-docker-local property for an app

New as of 0.12.0

Dokku natively includes functionality to manage application lifecycles for a single server using the scheduler-docker-local plugin. It is the default scheduler, but as with all schedulers, it is set on a per-application basis. The scheduler can currently be overridden by running the following command:

dokku config:set node-js-app DOCKER_SCHEDULER=docker-local

As it is the default, unsetting the DOCKER_SCHEDULER config variable is also a valid way to reset the scheduler.

dokku config:unset node-js-app DOCKER_SCHEDULER


Disabling chown of persistent storage

The scheduler-docker-local plugin will ensure your storage mounts are owned by either herokuishuser or the overridden value you have set in DOKKU_APP_USER. You may disable this by running the following scheduler-docker-local:set command for your application:

dokku scheduler-docker-local:set node-js-app disable-chown true

Once set, you may re-enable it by setting a blank value for disable-chown:

dokku scheduler-docker-local:set node-js-app disable-chown

Implemented Triggers

This plugin implements various functionality through plugn triggers to integrate with Docker for running apps on a single server. The following functionality is supported by the scheduler-docker-local plugin.

  • check-deploy
  • core-post-deploy
  • post-app-clone-setup
  • post-create
  • post-delete
  • pre-deploy
  • pre-restore
  • scheduler-deploy
  • scheduler-docker-cleanup
  • scheduler-inspect
  • scheduler-logs-failed
  • scheduler-logs
  • scheduler-retire
  • scheduler-run
  • scheduler-stop
  • scheduler-tags-create
  • scheduler-tags-destroy

Supported Resource Management Properties

The docker-local scheduler supports a minimal list of resource limits and reservations. The following properties are supported:

Resource Limits

  • cpu: (docker option: --cpus), and is specified in number of CPUs a process can access.
  • memory: (docker option: --memory) and should be specified with a suffix of b (bytes), k (kilobytes), m (megabytes), g (gigabytes)
  • memory-swap: (docker option: --memory-swap) and should be specified with a suffix of b (bytes), k (kilobytes), m (megabytes), g (gigabytes)

Resource Reservations

  • memory: (docker option: --memory-reservation) and should be specified with a suffix of b (bytes), k (kilobytes), m (megabytes), g (gigabytes)
You can’t perform that action at this time.