codemotion 2012 rome - an openshift primer
DESCRIPTION
Whether you're a seasoned Java developer looking to start hacking on EE6 or you just wrote your first line of Ruby yesterday, the cloud is perfect for developing apps in any modern language or framework. Join us for an action-packed hour of power where we'll show you how to deploy an application written in a language of your choice - Java, Ruby, PHP, Perl or Python, with a framework of your choice - EE6, CDI, Seam, Zend, Rails, Sinatra, PerlDancer or Django to the OpenShift PaaS in just minutes. Use the following promotional code when signing up to try out OpenShift: CODEMOTIONTRANSCRIPT
An OpenShift Primer Get your code into the Cloud!
Eric D. Schabell Codemotion – Rome, ItalyJBoss Senior Solution Architect 23-24 March [email protected] / @ericschabell www.codemotion.it
Sign up, it's free!• http://openshift.redhat.com – “Sign
up and Try it!”
• Example projects you can deploy now!
– https://www.github.com/openshift
• Help?
– IRC: freenode #openshift
– Forums: http://www.redhat.com/openshift/community/forums
– Email: openshift at redhat dot com
Promotional Code: CODEMOTION
Shift happens?
Immersion...
Never look back...
PaaS?
Why am i DORKINGwith the stack?!
Express
1.Sign Up
2.Install Client Tools
3.Create Domain
4.Create Application
5.Deploy Application (GIT)
Sign Uphttp://openshift.redhat.com
Install Client Tools
• Fedora / RHEL– openshift.repo
• Move to yum.repos.d$ sudo mv openshift.repo /etc/yum.repos.d
• Install client tools$ sudo yum install rubygem-rhc
• The rest (osX, Ubuntu, Cygwin):– gem install rhc
(json_pure)– see forums, blogs
Create Domain
• Use rhc-create-domain command$ rhc-create-domain -n mydomain -l openshiftlogin
• use Express console!
rhc-create-domain
Usage: /usr/bin/rhc-create-domain
Bind a registered rhcloud user to a domain in rhcloud.
-n|--namespace namespace Namespace for your application(s) (alphanumeric - max 16 chars)
-l|--rhlogin rhlogin Red Hat login (RHN or OpenShift login with OpenShift Express access)
-p|--password password RHLogin password (optional, will prompt)
-a|--alter Alter namespace (will change urls) and/or ssh key
-d|--debug Print Debug info
-h|--help Show Usage info
--config path Path of alternate config file
--timeout # Timeout, in seconds, for connection
Web Administration
Create Application
Configure Application
Ready to code!
Application Details
Why OpenShift? It's you.
Other Options: create apps
• Name app and define type$ rhc-create-app -a appname -t apptype -l openshiftlogin
(Node.js, DIY, Jenkins, PHP, Ruby, Python, Perl and most important, Java!)
• Add application to local repo$ git add .
• Commit changes$ git commit -m “Initial app import.”
Deploy to Cloud
• Push the code to Express
$ git push
• Congratulations, your app is in the cloud!
Demo Codemotion Mobile App
$ rhc-create-app -a codemotion -t jbossas-7
$ cd codemotion
$ git remote add upstream -m master git://github.com/eschabell/kitchensink-html5-mobile-example.git
$ git pull -s recursive -X theirs upstream master
$ git push
http://codemotion-$your_domain.rhcloud.com
JBoss Developer Studio
JBDS in action...
Remove Application
Time for a new project!
What will the future bring?
Express / Flex unification
JBoss++
Commercial Service / Pricing
Mobile
Open Source (SDK + project)2012
Loving your hammer?
• OpenShift: http://openshift.redhat.com
• OpenShift Express: https://openshift.redhat.com/app/express
• Blogs: https://www.redhat.com/openshift/community/blogs
• JBPM Web Designer in the Cloud (example): http://www.schabell.org/2011/10/jbpm-web-designer-integrates-jbpm.html
• Deploy an application to OpenShift with JBossTools (video): http://vimeo.com/33988381
• Deploying mobile application with JBoss Dev Studio: https://community.jboss.org/wiki/DeployingHTML5ApplicationsToOpenshift
• Rise above the Cloud hype with OpenShift: http://www.schabell.org/2012/01/rise-above-cloud-hype-with-openshift.html