The CloudBees ClickStack architecture is the core foundation that allows developers to choose from a variety of runtimes for running their applications.
All applications deployed to RUN@cloud are associated with an application runtime container type (also known as a Stack or ClickStack). By default, applications are setup to use a simple web container based on Tomcat 6. The type can be overriden via the -t argument in the CloudBees SDK's deploy command:
CloudBees currently offers three curated application stacks for running your Java applications.
| Stack ID | Description | Application Format | More Info |
|---|---|---|---|
| tomcat | Servlet application container based on Tomcat 6.0.32. This is the default container type. | Servlet Web Application Archive (.war) | |
| jboss | Java EE 6 Web Profile application container based on JBoss 7.02 | Servlet Web Application Archive (.war) | |
| java | Executes Java applications that are launched via Class.main() | JAR file or ZIP'd directory | Learn more |
The extensibility of the ClickStacks Architecture allows applications to use a variety of Community-contributable stacks. The following stacks are under development on the CloudBees Community Github site.
| Stack ID | Description | Application Format | More Info |
|---|---|---|---|
| tomcat7 | Servlet application container based on Tomcat 7. | Servlet Web Application Archive (.war) | Learn more |
| jboss71 | Java EE 6 Web Profile application container based on JBoss 7.1. | Servlet Web Application Archive (.war) | |
| glassfish3 | Java EE 6 Web Profile application container based on GlassFish 3 | Servlet Web Application Archive (.war) | Learn more |
| play2 | Native Play! 2 app container | ZIP'd directory | Learn more |
| sbt | Native SBT runtime | ZIP'd directory | Learn more |
| nodejs | Node.js support, use: bees app:deploy -t node -R PLUGIN.SRC.node=https://s3.amazonaws.com/clickstacks/admin/nodejs-plugin-0.10.5.zip sampleapp.zip | ZIP'd directory | Learn more |
| webmachine | Erlang webmachine framework | ZIP'd directory | Learn more |
You may want to use a specific version of a stack - or you have just built one and uploaded it. The above ones are using a name - you can use any name you want - and then point to a url that contains the zip'ed up version of the clickstack you want it to use.
You use this like so:
The name is arbitrary - it is the url that counts. You can see in some of the community supported ones above what a specific URL would look like (s3 is used due to scalability and availability - as this url will be hit for each target server the application lands on).
ClickStacks are a very powerful and rapidly evolving extensibility point of the CloudBees platform. We are currently accepting contributions for ClickStacks on our CloudBees Community on Github. If you are interested in contributing to an existing ClickStack, you can fork the appropriate ClickStack project on GitHub, and then send pull requests for any changes that you'd like to make to improve the stack. If you'd like to start a new stack, please contact us via our Support portal.
You can contribute your own clickstacks - here is a guide that shows you how to get started.
Very simply - use this app !