Deis 0.1.1 - Rackspace Preview, Bug Fixes
The Deis project is excited to announce our v0.1.1 release. We've added support for Rackspace Cloud and fixed many issues found by the Deis community.
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.
- Rackspace Cloud provider preview (lacks some documentation)
- Formation flavors can be updated from the command-line
Under the Hood
- Updated to Docker 0.6.4
- Updated buildstep to latest from upstream progrium/buildstep
- Updated some Ruby and Chef libraries
- Updated EC2 AMIs for faster provisioning
- Updated python gevent to address a DNS bug
- Fixed run commands executing against proxy nodes
- Fixed CLI scaling error message when no Rackspace image exists
- Fixed 502 "Bad Gateway" errors on controller converge
- Fixed double converge on new release
- Fixed handling of
git push deis mater(non-existent repo ref)
- Sitemap, Bing, ReadTheDocs.org documentation fixes
We want to thank the following Deis community members for creating GitHub issues, providing support to others, and working on various Deis branches:
- @bacongobbler - while his DigitalOcean support sits just shy of the finish line, awaiting Docker 0.7, he has helped immensely by answering questions on IRC and providing suggestions and comments on several GitHub issues.
- @progrium and asm89 on IRC - Deis wouldn't be here without buildstep, and we appreciate greatly the support we've gotten and the pull requests they've accepted.
- Jesse Noller and the Rackers - Rackspace has been outstanding in helping us implement first-class support for their Open Cloud, although their pyrax library already made it straightforward.
- @enyachoke, @tombh, @bacongobbler - Request, discussion, and code about a Vagrant provider implementation.
- Rackspace documentation. There is the beginning of documentation in the contrib/rackspace/README.md file, and intrepid users can certainly figure out how to provision a Rackspace controller, but we need to rework the install documentation so it treats EC2 and Rackspace (and others) as equal citizens.
- Vagrant provider. Allowing Deis to run on a completely local "cloud" will enable developers to test and improve Deis without incurring any provider charges. We have this working in a "static" node formation currently, but there are a couple details remaining to fix, and it needs documentation. @tombh has done some solid work on a full provider implementation for Vagrant as well.
- Team Support / Sharing. The mechanisms for sharing Formations and Apps are already implemented in a branch; we need to write more tests, implement some access control endpoints and make some changes to the gitosis data bag.
Enhanced Docker Integration
Deis currently uses Docker as a LXC wrapper for running Heroku Buildpack slugs that are bind-mounted into Buildstep images. As soon as the Docker Private Registry code stabilizes, we will be adding a new
git push build process that creates and distributes images via
Dockerfile and a private registry hosted on the controller.
General Security Improvements
Both the controller and formation proxies require SSL configuration. Right now controller sessions are just HTTP with cookies and passwords sent in the clear! We've also glossed over some pretty important security features in an effort to get Deis into developers hands. 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".
We do not currently monitor nodes or container health -- though we have infrastructure in place to do it.
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 applications. This will be done in a loosely coupled way, following Twelve Factor best practices.
How can you help?
- 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.