Just messing around with docker and the ruby container. Didnt call gems yet but following instructions in https://hub.docker.com/_/ruby, got a quick ruby environment running.
working directory: /src/docker-ruby
#ruby.sh
#chmod 755 ruby.sh
[ruby.sh]
#!/bin/bash
sudo docker run -it --rm --name some-ruby -v "$PWD":/src/docker-ruby -w /src/docker-ruby ruby:2.6.0 ruby ./start.rb
chmod 755 ruby.sh
#run as ./ruby.sh
[start.rb]
class MegaGreeter
attr_accessor :names
def initialize(names="World")
@names = names
end
def say_hi
if @names.nil?
puts "..."
elsif @names.respond_to?("each")
@names.each do |name|
puts "Hello #{name}!"
end
else
puts "Hello #{@names}!"
end
end
def say_bye
if @names.nil?
puts "..."
elsif @names.respond_to?("join")
puts "Goodbye #{@names.join(", ")}. Come back soon!"
else
puts "Goodbye #{@names}. Come back soon!"
end
end
end
if __FILE__ == $0
mg = MegaGreeter.new
mg.say_hi
mg.say_bye
mg.names = "Zeke"
mg.say_hi
mg.say_bye
mg.names = ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]
mg.say_hi
mg.say_bye
mg.names = nil
mg.say_hi
mg.say_bye
end
greeter = MegaGreeter.new("rob")
greeter.say_hi
puts "Great day!"
greeter.say_bye