New Python, Perl, PHP and Node.js versions available Now!

I’m happy to announce some exciting updates to some of our services. As you may or may not know, we roll out changes to our platform every Wednesday. These changes can be anything from minor bug fixes to whole new features. Over the past few months I have been going through our services one by one and updating them and adding lots of frequently requested features. Here is a list of new features, that are now supported on dotCloud. Enjoy!

Python and Python-worker

Our default Python and Python-Worker service now lets you pick which version of Python you want to use when deploying your service. You can pick Python version 2.6, 2.7, 3.1, or 3.2. If you don’t specify which version you want, it will default to Python 2.6.

For more information on how to configure your python version, please refer to our newly updated Python documentation

The Python service has also had it’s nginx and uWSGI version updated, to the latest and greatest version available.

For those folks who are fans of NewRelic, it is now even easier than ever to use NewRelic with our python service.

For full details on how to setup NewRelic, please refer to our Python New Relic documentation.


The Node.js developers are moving like crazy, and releasing new versions all of the time, and before we knew it our Node.js service was out of date. To make it easier to stay up to date, but allow people to keep running the older stable versions of Node.js, we added the ability to specify which version of node.js you want at deploy time. We currently support all 3 major branches of node.js 0.4, 0.6 and 0.8. If you don’t specify a version, it will default to Node.js version 0.4.

Refer to the Node.js documentation for more details.

Perl & perl-worker

Perl has been making a comeback lately because of great web frameworks like Mojolicious and Dancer. To make it easier to use these and many other great Perl libraries, we added the ability to select which Perl version you want to run for your Perl and Perl-worker services. You can choose between 5.12, 5.14, and 5.16. Picking the version is easy, you just need to add one attribute to your dotcloud.yml. If you don’t specify a Perl version it will default to 5.12.

For more information look at the perl documentation.

The Perl service has also had it’s nginx and uWSGI version updated, to the latest and greatest version available.

PHP & PHP-worker

We didn’t want to leave the PHP and PHP-worker service out of all the fun, so we went ahead and updated them to version PHP 5.4.6. Because English isn’t the only language spoken in the world, we went ahead and added all of the locales that we could find. If we are missing one that you need, please let us know. While we were at it, we also updated nginx to the latest version as well.

Using the new versions:

All new applications will automatically use the updated versions. However, existing applications are not affected, until you decide to upgrade. Once you’re ready, just push your application with the –clean flag (e.g. dotcloud push ramen –clean), and the platform will do a full rebuild of your app with the latest service versions available. Likewise, if you update your dotcloud.yml file to switch to a new version, you should repush with the –clean flag.

Not sure if you are using the latest version? Run dotcloud info on your service. The output contains an image_version identifier. If you are using the latest version, it will say so, with a (latest) indication behind the version number.

$ dotcloud info ramen.www
image_version: 5a6c9dedadf0 (latest)