Skip to content
bitrock edited this page Nov 2, 2012 · 24 revisions

Server Options for JRuby Applications

Standard Java Servers

Most people deploy JRuby applications using typical Java application servers like Tomcat or JBoss. When using these servers, the usual solution is Warbler. Warbler bundles up any Rack-based application into a Java "Web Application aRchive" (WAR) file, which can then be deployed on any web application server.

The following is a list of servers known to work with JRuby. It is not meant to be exhaustive.

  • Tomcat
  • JBoss
  • GlassFish
  • WebLogic
  • WebSphere

Other Servers

  • Vert.x - An asynchronous application platform on the JVM for writing high performance web enabled applications. Vert.x is a polyglot platform and lets you write your applications in multiple JVM languages including Ruby (JRuby).

Embedded/Micro Servers

The usual Ruby way to run a server is to launch a small command-line server pointing at the application directory. Some of the standard Ruby servers work with JRuby, and an additional set of servers have been built specifically for JRuby by either wrapping an existing server or by simply wrapping Java libraries.

The following is a list of embedded/micro/commandline servers for JRuby. If you don't see your favorite here, add it!

Actively-developed Servers

Other Servers. Young Projects

Deprecated Servers

  • Kirk - Another Jetty wrapper, but less "micro" with redeploy and multiple appsupport.
  • Aspen - A server based on Netty, a Java NIO framework.
  • Mongrel - The classic Ruby server, no longer maintained.
  • GlassFish gem - A gem-borne embedded version of GlassFish, now no longer maintained by Oracle.

Application Hosting Services

There are also several cloud and hosting services that either directly support JRuby or implicitly support it by having general Java webapp support.

The following services are known to work. Other webapp services should generally support JRuby applications (via Warbler) as well.

  • Heroku - third-party support through build packs: github.com/carlhoerberg/heroku-buildpack-jruby
  • Engine Yard - Direct support, generally available now.
  • Google AppEngine - Indirect support, but a community exists around JRuby deployment
  • Amazon Elastic BeanStalk - An elastic Java webapp cloud from Amazon based on Tomcat.
  • OpenShift by Red Hat - Several possibilities
    • OpenShifter - CLI tool to simplify the deployment of JRuby applications to OpenShift using JBoss application server
    • OpenShift-JRuby - Template for running JRuby application on OpenShift without an application server.
    • Deploying pre-build .war file to JBoss
  • BitNami - Provides free Amazon Cloud Images for JRuby Stack which include MySQL, Tomcat, Java, JRuby and the commonly used gems (including warbler). BitNami Cloud Hosting is an optional commercial service with a free developer plan that provides scheduled backups, monitoring and customization for JRuby projects and dozens of other open source app and frameworks.
Clone this wiki locally