Module: MKIt::DockerHelper

Included in:
DockerListener, Pod, Service
Defined in:
lib/mkit/app/helpers/docker_helper.rb

Instance Method Summary collapse

Instance Method Details

#attach_network(network_id, instance_id) ⇒ Object



50
51
52
# File 'lib/mkit/app/helpers/docker_helper.rb', line 50

def attach_network(network_id, instance_id)
  MKIt::CmdRunner.run("docker network connect #{network_id} #{instance_id}")
end

#create_instance(cmd) ⇒ Object

from ERB template



7
8
9
# File 'lib/mkit/app/helpers/docker_helper.rb', line 7

def create_instance(cmd)
  MKIt::CmdRunner.run(cmd)
end

#create_network(network_name) ⇒ Object

network



37
38
39
# File 'lib/mkit/app/helpers/docker_helper.rb', line 37

def create_network(network_name)
  MKIt::CmdRunner.run("docker network create #{network_name}")
end

#create_volume(volume_name) ⇒ Object

volumes



62
63
64
# File 'lib/mkit/app/helpers/docker_helper.rb', line 62

def create_volume(volume_name)
  MKIt::CmdRunner.run("docker volume create #{volume_name}")
end

#delete_volume(volume_name) ⇒ Object



66
67
68
# File 'lib/mkit/app/helpers/docker_helper.rb', line 66

def delete_volume(volume_name)
  MKIt::CmdRunner.run("docker volume rm #{volume_name}")
end

#dettach_network(network_id, instance_id) ⇒ Object



46
47
48
# File 'lib/mkit/app/helpers/docker_helper.rb', line 46

def dettach_network(network_id, instance_id)
  MKIt::CmdRunner.run("docker network disconnect #{network_id} #{instance_id}")
end

#execute_local(instance_id, cmd) ⇒ Object



29
30
31
# File 'lib/mkit/app/helpers/docker_helper.rb', line 29

def execute_local(instance_id, cmd)
  MKIt::CmdRunner.run("docker exec -it #{instance_id} #{cmd}")
end

#inspect_instance(instance_id) ⇒ Object



23
24
25
26
27
# File 'lib/mkit/app/helpers/docker_helper.rb', line 23

def inspect_instance(instance_id)
  # this one does not work on ubunto MKIt::CmdRunner.run("docker inspect #{instance_id}")
  x = %x{docker inspect #{instance_id}}
  JSON.parse(x).first
end

#inspect_volume(volume_name) ⇒ Object



70
71
72
73
# File 'lib/mkit/app/helpers/docker_helper.rb', line 70

def inspect_volume(volume_name)
  x = MKIt::CmdRunner.run("docker volume inspect #{volume_name}")
  JSON.parse(x).first
end

#network_exists?(network_name) ⇒ Boolean

Returns:

  • (Boolean)


41
42
43
44
# File 'lib/mkit/app/helpers/docker_helper.rb', line 41

def network_exists?(network_name)
  x = MKIt::CmdRunner.run("docker network ls")
  x.match(/\b#{network_name}\b/)
end

#remove_instance(instance) ⇒ Object



19
20
21
# File 'lib/mkit/app/helpers/docker_helper.rb', line 19

def remove_instance(instance)
  MKIt::CmdRunner.run("docker rm -f #{instance}")
end

#remove_network(network_id) ⇒ Object



54
55
56
# File 'lib/mkit/app/helpers/docker_helper.rb', line 54

def remove_network(network_id)
  MKIt::CmdRunner.run("docker network rm #{network_id}")
end

#start_instance(instance_id) ⇒ Object



11
12
13
# File 'lib/mkit/app/helpers/docker_helper.rb', line 11

def start_instance(instance_id)
  MKIt::CmdRunner.run("docker start #{instance_id}")
end

#stop_instance(instance_id) ⇒ Object



15
16
17
# File 'lib/mkit/app/helpers/docker_helper.rb', line 15

def stop_instance(instance_id)
  MKIt::CmdRunner.run("docker stop #{instance_id}")
end