When you first logged in to the DevCloud you were asked to create a container. A container is a small version of the Zend Application Fabric. The Fabric is a standardized system of runtimes, components and APIs based around Zend Server. Included in the DevCloud are several additional features that are useful and we will discuss some of them here.
As noted previously, a container is a small version of the Zend Application Fabric. It is the most general feature and most other features will be housed within the container. It contains an instance of Zend Server, who’s UI you can access from within that container’s UI via a button on the top. This container also contains your MySQL instance and any applications that need to access that application. Each individual application in your container will need to share that database. If you need to have applications segmented from each other then you will need to either create an additional container or utilize a service like RDS which will use the standard MySQL extensions.
Sometimes as you’re doing development you may want to save the complete state of your application so that you have the ability to revert completely back to a given point in time. While source control allows you to do this with your source code, you typically don’t have the ability to do versioning with your entire application stack. However, with the snapshot feature you can get a shot of your entire container in time. That means source code, applications and data in your database. If what you’re trying goes horribly wrong you can delete your container and start fresh from where you had originally left off.
While snap-shotting your application is useful from a “developer job-security” perspective, it is also quite useful for things like getting developers up and running, or helping replicate an issue. When a new developer comes on-board with an organization you are often looking at several hours, or even days, until they have a proper development environment up and running. With the DevCloud all you need to do is take a snapshot of your current container, send the URL to the new developer and in about 2 minutes they’ll have their container up and running.