Scaling out Dokku infrastructure
Dokku maintainer here.
Providing a custom scheduler - like what software such as Flynn or Nanobox provide - is unlikely to happen. Instead, we are going to support integrating with existing solutions such as ECS, Kubernetes, and Nomad. At the moment, we have a few HA options under development which utilize the plugin architecture to provide alternative schedulers for Dokku.
- Kubernetes: https://github.com/dokku/dokku-scheduler-kubernetes
- Nomad: https://github.com/dokku/dokku-scheduler-nomad
Both methods currently work, though which you choose and how you integrate them with your infrastructure depends on what your needs are. Feel free to join us on Slack/IRC to help guide future development of each integration.
Aside, the Deis support provided to Dokku was fairly minimal, and mostly went to shared tooling (herokuish and some of the app building aspects). There were no other ties between the two projects, and no existing ties between Dokku and Hephy Workflow (though we wish the project well!). We encourage folks to use the best solution to their problems, whether thats Dokku, Flynn, Deis, Heroku, or any other platform.
Dokku (as stated in the docs) doesn't do:
- Multi-host. Not a huge leap, but this isn't the project for it. Have a look at Deis.
- Multitenancy. It's ready for it, but again, have a look at Deis.
- Client app. Given the constraints, running commands remotely via SSH is fine.
You might want to look at other multi host solutions for scaling dokku:
- Deis
- Flynn
Or build it yourself using CoreOs
Update for 2019:
Hephy Workflow is a fork of Deis Workflow. This is likely the most logical answer to the question at the time of this edit.
Deis is no longer a valid answer (and hasn't been for a very long time). Deis was deprecated in favor of a newer platform called Deis Workflow, which was a PaaS similar to Deis built upon Kubernetes. But Deis Workflow has also been deprecated.
In addition to Hephy there is also Flynn. But I don't know the status of that project. The links are dead. But I'll leave the original answer below.
Dokku is actually partnering up with OpDemand and Deis to help provide a clear upgrade path to those who want multi-host (and vice versa). See http://deis.io/deis-sponsors-dokku/ and http://progrium.com/blog/2014/10/28/deis-breathes-new-life-into-dokku/.
Deis will give you:
- A number of routers to load balance your instances.
- Commands to scale the instances (much like Heroku).
- An architecture that requires you to run on 3 or more hosts, gaining you some fault tolerance and high availability out of the box.
So to answer the question, the more "official" way will soon be to setup and use Deis when coming from a Dokku world.