class Ikaros::Docker

Public Class Methods

exec(command, options={}) click to toggle source
# File lib/ikaros/docker.rb, line 51
def exec(command, options={})
  Command.new(command, options).run
end
get_name(id) click to toggle source
# File lib/ikaros/docker.rb, line 41
def get_name(id)
  command = "docker inspect -f '{{ .Name }}' #{id} | cut -d / -f2"
  exec command
end
rm(id) click to toggle source
# File lib/ikaros/docker.rb, line 46
def rm(id)
  command = "docker rm #{id}"
  exec command
end
run(image, options) click to toggle source
# File lib/ikaros/docker.rb, line 7
def run(image, options)
  command = 'docker run '

  options[:link] && options[:link].each do |key, value|
    command = "#{command} --link #{value}:#{key}"
  end

  if options[:env]
    options[:env].each do |key, value|
      command = "#{command} -e #{key}=#{value}"
    end
  end

  if options[:mount]
    options[:mount].each do |key, value|
      command = "#{command} -v #{value}:#{key}"
    end
  end

  if options[:daemon]
    command = "#{command} -d"
  end

  command = "#{command} #{image}"
  command = "#{command} /scripts/ruby.sh" unless options[:daemon]

  exec command, options
end
stop(id) click to toggle source
# File lib/ikaros/docker.rb, line 36
def stop(id)
  command = "docker stop #{id}"
  exec command
end