The number of cloud deployment platforms is growing steadily. A recent entrant this year is OpenShift, from Red Hat. It includes a free software stack for Java, Ruby, Perl, PHP, and others, with support for an impressive list of application frameworks. With their free express edition you can get a simple web application up and running entirely from your browser using Orion. Here’s how:
1) Sign up for a free OpenShift account.
2) Add a public ssh key to your OpenShift account. Use ssh-keygen to generate new ones or use an existing key pair if you have it.
3) In the Create an app… section of the OpenShift control panel, enter an application name and type. I selected PHP, but you can also use Rails, JBoss, etc.
Creating the application will give you two important bits of information: the Git URL for uploading your application, and the deployed application URL:
4) In Orion, go to the Repositories page, and click Clone Repository. Enter the Git URL obtained in step 3).
5) On the Orion Navigator page, expand your application and browse the contents:
6) Click index.php to open in the Orion editor, and add your HTML and PHP code:
7) Back on the Repositories page, click Git Status next to your repository to open the Orion Git status page. Stage, commit, and push your changes. You will need to paste the private SSH key corresponding to the public key you uploaded to OpenShift in step 2).
Finally, navigate to the deployed application URL provided in step 3) to see your application!
While this was just a trivial example, there are a large number of sample OpenShift applications on GitHub. Examples include popular PHP packages like WordPress, Drupal, and MediaWiki, all of which can be deployed on your free OpenShift domain and edited in Orion. One major drawback is that you can’t configure SQL repositories for your application directly from the OpenShift console. You have to install ugly old command line tools for that part, but hopefully they will add it to the console in the future.
We can see the convergence happening here between development and deployment platforms. As they get closer together, it is becoming possible to author web applications from your browser, and deploy them without having to install a single development tool on your local computer. Exciting times!