6 Aug 2013
Ready to deploy your own private PaaS based on Chef, Docker and Heroku Buildpacks? The Deis project is excited to announce our public beta!
What is Deis?
Deis is a Django/Celery API server, Python CLI and set of Chef cookbooks that combine to provide a Heroku-inspired application platform for public and private clouds. Your PaaS. Your Rules.
- New http://deis.io website with integrated documentation
- Sphinx docs including concepts, installation, usage, terms and full API reference
- Bug fixes found during end-to-end testing
- Reset of south migrations in preparation for public release
- Published deis-cookbooks to Chef community site
Enhanced Docker Integration
Deis currently uses Docker as a LXC wrapper for running Buildpack slugs that are bind-mounted into default Buildstep images. We will be adding a new build process that creates and distributes images via
Dockerfile builds and a private registry. We will also allow builds to reference existing Docker images by a fully qualified image path.
Deis will not be ready for production use until we have a log aggregation solution that provides end-users with a
deis logs command. This is critical for troubleshooting app deployment issues. We also need a way to drain logs into tools like Splunk, Logstash, Graylog2, etc.
Most frameworks require running one-off admin commands to setup databases, inspect settings and offer visibility into the Docker-based runtime environment. We will build a solution that offers a
deis run bash capability.
Both the controller and formation proxies require SSL configuration. Right now it's just HTTP with cookies and passwords sent in the clear!
General Security Improvements
We've glossed over some pretty important security features in an effort to get Deis into developers hands sooner rather than later. For example, we need to implement iptables host-level firewalls, improve security group default rules, use Chef recipes to harden systems, etc. If you find any other security holes, please open a GitHub issue and tag it "Security".
As of now, only a single user can control or push to a formation. We need to add simple sharing features, which we can then expand upon using finer-grained access controls.
We do not currently monitor nodes or container health -- though we have infrastructure in place to do it.
We are very close to offering cross-provider formations, where a single app deployment can span multiple zones, regions or even providers -- while being driven by a single
git push or
We need to make it as easy for ops folks to publish a set of reusable backing services (databases, queues, storage, etc) and allow developers to attach those services to formations. This will be done in a loosely coupled way, following Twelve Factor best practices.
How can you help?
Deis is still in its early stages -- we can use all the help we can get!
- Star our GitHub repository
- Help spread the word about @opendeis on Twitter
- Explore contributing to the Deis project by joining the #deis channel on Freenode
You can learn about other ways to get involved on our website.