Red Hat OpenShift Express"

From Documentation
m (add download sample)
Line 58: Line 58:
  
 
= Deploy changes to OpenShift =
 
= Deploy changes to OpenShift =
To deploy an application to the cloud, you must make changes in the git directory location specified during the application creation process.<br/>
+
Once you created a OpenShift application in local machine, the application had been deployed to cloud also. Therefore, to deploy an application to the cloud, you must make changes in the git directory location specified during the application creation process.<br/>
 
There are two options to deploy the changes. You can use either option to deploy your application.
 
There are two options to deploy the changes. You can use either option to deploy your application.
  
Line 73: Line 73:
  
 
== Option 2: Upload prebuilt contents ==
 
== Option 2: Upload prebuilt contents ==
If you do not wish OpenShift to build your project automatically, you have to remove pom.xml file.
+
If you do not wish OpenShift to build your project automatically, you have to remove pom.xml file and all the source code.
 
<source lang="bash">
 
<source lang="bash">
 
$ cd AppName
 
$ cd AppName
$ git rm -r pom.xml
+
$ git rm -r src/ pom.xml
 
</source>
 
</source>
 
Then copy the prebuilt war file into '''deployments''' folder and rename it to ROOT.war<ref>By default the warName is ROOT within the pom.xml file. This will render the webapp contents at http://app_name-namespace.rhcloud.com.<br/>If you change the warName in pom.xml to app_name or if the warName in deployments folder is app_name.war, then your base URL would become http://app_name-namespace.rhcloud.com/app_name.</ref>
 
Then copy the prebuilt war file into '''deployments''' folder and rename it to ROOT.war<ref>By default the warName is ROOT within the pom.xml file. This will render the webapp contents at http://app_name-namespace.rhcloud.com.<br/>If you change the warName in pom.xml to app_name or if the warName in deployments folder is app_name.war, then your base URL would become http://app_name-namespace.rhcloud.com/app_name.</ref>
Line 86: Line 86:
 
</source>
 
</source>
 
Once it's done you can visit http://appName-domainName.rhcloud.com/ to see the result
 
Once it's done you can visit http://appName-domainName.rhcloud.com/ to see the result
 
 
----
 
----
 
<references/>
 
<references/>
 +
 +
= Sample =
 +
*[http://sourceforge.net/projects/zk1/files/ZK%20for%20OpenShift/ Download] the sample maven project named openshift_zksandbox.zip.
 +
*Sandbox sample is deployed on OpenShift at http://zksandbox-zksupport.rhcloud.com/.
  
 
{{ZKInstallationGuidePageFooter}}
 
{{ZKInstallationGuidePageFooter}}

Revision as of 04:22, 2 January 2012


Red Hat OpenShift Express



Get Your OpenShift Ready

  • Apply a new OpenShift account if you don't have a Red Hat Network (RHN) account.
  • Refer to OpenShift User Guide for required client tools.
    1. Prerequisites for Red Hat Enterprise Linux or Fedora:
    2. Prerequisites for Other Linuxes:
      • Root access
      • Ruby 1.8 or higher installed or available to be installed
      • Install the required packages: git, ruby, rubygems, and the ruby 1.8 development package.
    3. Prerequisites for Mac:
      • git
    4. Prerequisites for Windows:
      • Cygwin with the following optional components:
        • openssh
        • ruby
        • make
        • gcc
        • git
      • RubyGems

Create an OpenShift domain name

Run rhc-create-domain command to create an unique domain name for your application.

$ rhc-create-domain -n DomainName -l rhlogin -p password
  • -n DomainName — specifies the domain that you want to create. This must contain a maximum of 16 alphanumeric characters.
  • -l rhlogin — your OpenShift Express or RHN account.
  • -p password — your OpenShift Express or RHN password.

Create a Maven Application

Run rhc-create-app command and OpenShift will create a maven project with default page automatically.

$ rhc-create-app -a AppName -t Type -l rhlogin -p password
  • -a AppName — The name of the application to create (maximum of 32 alphanumeric characters).
  • -t Type — The framework type to create. OpenShift Express currently supports the following application types:
    • php-5.3 — for PHP applications
    • wsgi-3.2 — for Web Server Gateway Interface applications
    • rack-1.1 — for Ruby Webserver Interface applications
    • perl-5.10 — for Perl applications
    • jbossas-7.0 — for JBoss AS applications (used for ZK project)
    • raw-0.1 — a raw cartridge type used to create applications of no specific type
  • -l rhlogin — your OpenShift Express or RHN account.
  • -p password — your OpenShift Express or RHN password.

Visit http://AppName-DomainName.rhcloud.com/ to see the default OpenShift page.

Import into Eclipse IDE (Optional)

If you wish to use Eclipse,

  • Run the following command to support Eclipse.
$ mvn eclipse:eclipse
  • Refer to here to import into Eclipse.

Deploy changes to OpenShift

Once you created a OpenShift application in local machine, the application had been deployed to cloud also. Therefore, to deploy an application to the cloud, you must make changes in the git directory location specified during the application creation process.
There are two options to deploy the changes. You can use either option to deploy your application.

Option 1: Upload contents in a Maven src structure

This option is simple and recommended. Just push the source code with "git push" command.

$ cd AppName
$ git add .
$ git commit -a -m "Commit Message"
$ git push origin master

Then OpenShift will build your project on cloud. Once it's done you can visit http://AppName-DomainName.rhcloud.com/ to see your application.

Option 2: Upload prebuilt contents

If you do not wish OpenShift to build your project automatically, you have to remove pom.xml file and all the source code.

$ cd AppName
$ git rm -r src/ pom.xml

Then copy the prebuilt war file into deployments folder and rename it to ROOT.war[1]

$ cp target/prebuilt.war deployments/ROOT.war
$ git add .
$ git commit -a -m "Commit Message"
$ git push origin master

Once it's done you can visit http://appName-domainName.rhcloud.com/ to see the result


  1. By default the warName is ROOT within the pom.xml file. This will render the webapp contents at http://app_name-namespace.rhcloud.com.
    If you change the warName in pom.xml to app_name or if the warName in deployments folder is app_name.war, then your base URL would become http://app_name-namespace.rhcloud.com/app_name.

Sample



Last Update : 2012/01/02

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.