Categories
Ruby

Develop using ruby in a docker – ver 1.0

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