class SwarmClusterCliOpe::Models::Container

Attributes

id[RW]

@return [String] id del container

image[RW]

@return [String] nome dell'immagine

labels[RW]

@return [Hash] labels del container

name[RW]

@return [String]

Public Class Methods

all(service_name: nil) click to toggle source
# File lib/swarm_cluster_cli_ope/models/container.rb, line 34
def self.all(service_name: nil)
  Commands::Container.new.ps(service_name: service_name).result(object_class: Container)
end
find_by_service_name(service_name, stack_name: nil) click to toggle source

@return [SwarmClusterCliOpe::Models::Container]

# File lib/swarm_cluster_cli_ope/models/container.rb, line 30
def self.find_by_service_name(service_name, stack_name: nil)
  Service.find(service_name,stack_name:stack_name).containers.first
end

Public Instance Methods

config=(config) click to toggle source

Può essere che riceva dei valori dal config, tipo quando facciamo inspect

# File lib/swarm_cluster_cli_ope/models/container.rb, line 20
def config=(config)
  @labels = config["Labels"]
end
copy_in(src, dest) click to toggle source

Copia i file dentro al container @param [String] src sorgente da cui copiare @param [String] dest destinazione a cui copiare

# File lib/swarm_cluster_cli_ope/models/container.rb, line 42
def copy_in(src, dest)
  docker_command.cp(src, "#{id}:#{dest}").success?
end
copy_out(src, dest) click to toggle source

Copia i file dal container all'esterno @param [String] src sorgente da cui copiare @param [String] dest destinazione a cui copiare

# File lib/swarm_cluster_cli_ope/models/container.rb, line 50
def copy_out(src, dest)
  docker_command.cp("#{id}:#{src}", dest).success?
end
exec(cmd) click to toggle source

Esegue il comando passato

# File lib/swarm_cluster_cli_ope/models/container.rb, line 56
def exec(cmd)
  docker_command.exec(id, cmd)
end
labels=(labels) click to toggle source
# File lib/swarm_cluster_cli_ope/models/container.rb, line 15
def labels=(labels)
  @labels = labels.split(",").collect { |a| a.split("=") }.collect { |a, b| [a, b] }.to_h
end
mapped_uri_connection() click to toggle source

Ritorna il connection_uri del nodo che ospita il container @return [String]

# File lib/swarm_cluster_cli_ope/models/container.rb, line 63
def mapped_uri_connection
  node.connection_uri
end
mapped_volumes() click to toggle source

Elenco dei volumi mappato @return [Array<MappedVolume>]

# File lib/swarm_cluster_cli_ope/models/container.rb, line 70
def mapped_volumes
  docker_inspect.Mounts.collect { |v| MappedVolume.new(v, container: self) }
end
node() click to toggle source

Ritorna il nodo dello swarm che contiene questo container @return [SwarmClusterCliOpe::Node]

# File lib/swarm_cluster_cli_ope/models/container.rb, line 77
def node
  cfgs.get_node_by_id(node_id)
end
node_id() click to toggle source

@return [String] id del nodo di appartenenza

# File lib/swarm_cluster_cli_ope/models/container.rb, line 25
def node_id
  labels["com.docker.swarm.node.id"]
end