Deis 0.5.2 - Maintenance Release

18 Mar 2014

We are happy to announce our v0.5.2 release. This maintenance release fixes several issues found by the Deis community and improves the documentation in many areas.

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.

0.5.2 Summary

Doc Improvements

  • Added description of new containerized architecture
  • Added documentation for the new Dockerfile workflow
  • Fixed REST API and doc pages generation error
  • Made notes neon pink and warnings neon orange
  • Updated Deis Controller installation docs across all providers
  • Added rsyslog export documentation
  • Document how to store Docker registry images in S3

Under the Hood

  • Updated to dop 0.1.6 for DigitalOcean support

Bug Fixes

  • Fixed error when doing deis config:set before a build exists
  • Fixed EtcdException when running deis/server unit tests
  • Removed some cruft from Deis' integration
  • Many fixes to Rackspace cloud support
  • Fixed "sudo dsh" error when finishing provisioning on Vagrant
  • Fixed failure when app name is less than 4 characters long
  • Fixed 500 error when creating a formation without provider credentials
  • Several changes to Vagrant scripts to align with other providers
  • Allow extra parameters for private networking support for DigitalOcean
  • Increased timeouts to help with "docker pull" issues

Community Shout-Outs

We want to thank the following Deis community members for creating GitHub issues, providing support to others, and working on various Deis branches:

  • @tombh - sudo dsh fix, vagrant provisioning changes, help and support as always
  • @tscheepers - updated vagrant README
  • @azurewraith - docker pull timeouts issue, lots of testing
  • @Milodv - DigitalOcean private networking support
  • @ksikka - S3 registry images docs request
  • @davidcollom - Rackspace bug finding and testing

Known Issues

Proxy for Platform Services

As part of moving Deis into Docker containers, we had to change the exposed ports for some core platform services. For example, the Django API server is now exposed on 8000/tcp rather than 80/tcp. We will soon distribute a new proxy service that exposes the platform components on standard ports.

Container Timeouts

We have seen some issues with timeouts due to the public Docker Index. This can manifest as timeout errors when bootstrapping nodes. Typically re-running the provisioning operations will resolve the issue. We are working with the Docker team on a more robust resolution.

What's Next?

Docker Run Deis

Making Deis easier to install is one of our primary goals, and one of the driving forces behind our decision to containerize all the Deis components. Running Deis should be as easy as docker run deis/deis. We have a working prototype today. However, this will require some careful project restructuring on GitHub.

Enterprise-Grade Scheduler

We are now prototyping a new scheduler based on Apache Mesos, an enterprise-grade cluster manager. This change to the scheduler implementation will be transparent to end users, but should allow Deis to scale to 10,000+ nodes.

Promote artifacts from Docker Registry

In order to facilitate a streamlined CI/CD process, we need an ability to promote existing Docker images as builds (bypassing the git push process). We are currently investigating the best workflow.

SSL & General Security Improvements

For more details, see issues tagged security on GitHub.


Remove the Chef Dependency

Though Chef will continue to be the recommended way to deploy Deis, we are moving away from requiring a Chef Server and using Data Bags for cluster configuration. Once we implement the new scheduler, we can remove the Chef dependency and provide support for other configuration management solutions (Puppet, Ansible, Salt).

Service Gateway

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. You can review the initial implementation and follow progress on this GitHub issue.

Interactive deis run

Though we provide the ability to run admin commands inside containers, we don't currently support interactive shells into containers (i.e. deis run bash). Once this infrastructure is in place, this will also allow us to implement log tailing and other real-time features.

Support for deis push deploys

Users should be able to push builds to Deis even if they don't use git. We are investigating a deis push command that would not require a specific VCS.

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.

Posted in Deis v1 PaaS

triangle square circle

Did you enjoy this post?