From fbdaaa95f768de2cb4508dde956912f4081a824a Mon Sep 17 00:00:00 2001 From: Brian Goff Date: Wed, 24 Sep 2014 14:06:30 -0400 Subject: [PATCH] Add jruby docs --- jruby/README-short.txt | 1 + jruby/content.md | 42 +++++++++++++++++++++++++++++++++++++++++ jruby/license.md | 2 ++ jruby/logo.png | Bin 0 -> 10612 bytes 4 files changed, 45 insertions(+) create mode 100644 jruby/README-short.txt create mode 100644 jruby/content.md create mode 100644 jruby/license.md create mode 100644 jruby/logo.png diff --git a/jruby/README-short.txt b/jruby/README-short.txt new file mode 100644 index 000000000..d801f0d5d --- /dev/null +++ b/jruby/README-short.txt @@ -0,0 +1 @@ +JRuby (http://www.jruby.org) is an implementation of Ruby (http://www.ruby-lang.org) on the JVM. diff --git a/jruby/content.md b/jruby/content.md new file mode 100644 index 000000000..570111167 --- /dev/null +++ b/jruby/content.md @@ -0,0 +1,42 @@ +# What is JRuby? + +JRuby (http://www.jruby.org) is an implementation of Ruby (http://www.ruby-lang.org) on the JVM. + +Ruby is a dynamic, reflective, object-oriented, general-purpose, open-source +programming language. According to its authors, Ruby was influenced by Perl, +Smalltalk, Eiffel, Ada, and Lisp. It supports multiple programming paradigms, +including functional, object-oriented, and imperative. It also has a dynamic +type system and automatic memory management. + +> [wikipedia.org/wiki/Ruby_(programming_language)](https://en.wikipedia.org/wiki/Ruby_(programming_language)) + +JRuby leverages the robustness and speed of the JVM while providing the same +Ruby that you already know and love. +With JRuby you are able to take advantage of real native threads, enhanced +garbage collection, and even import and use java libraries. + +# How to use this image + +## Create a `Dockerfile` in your Ruby app project + + FROM jruby:.1.7.15-onbuild + CMD ["./your-daemon-or-script.rb"] + +Put this file in the root of your app, next to the `Gemfile`. + +This image includes multiple `ONBUILD` triggers which should be all you need to +bootstrap most applications. The build will `COPY . /usr/src/app` and `RUN +bundle install`. + +You can then build and run the Ruby image: + + docker build -t my-ruby-app . + docker run -it --name my-running-script my-ruby-app + +## Run a single Ruby script + +For many simple, single file projects, you may find it inconvenient to write a +complete `Dockerfile`. In such cases, you can run a Ruby script by using the +Ruby Docker image directly: + + docker run -it --rm --name my-running-script -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp jruby:1.7.15 jruby your-daemon-or-script.rb diff --git a/jruby/license.md b/jruby/license.md new file mode 100644 index 000000000..221e1b263 --- /dev/null +++ b/jruby/license.md @@ -0,0 +1,2 @@ +View [license information](https://github.com/jruby/jruby/blob/master/COPYING) +for the software contained in this image. diff --git a/jruby/logo.png b/jruby/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..7148215282f3fceb6af555077e1a17a2bf56ba7b GIT binary patch literal 10612 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 literal 0 HcmV?d00001