Class: Algo::Docker::Network
- Inherits:
-
Base
- Object
- Base
- Algo::Docker::Network
show all
- Defined in:
- lib/algo/docker/network.rb
Constant Summary
collapse
- DEFAULT_NETWORKS =
%w(ingress none host bridge docker_gwbridge)
Instance Attribute Summary
Attributes inherited from Base
#id
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Base
#initialize
Class Method Details
.all(skip_default = false, conn = Docker.connection) ⇒ Object
35
36
37
38
39
|
# File 'lib/algo/docker/network.rb', line 35
def self.all(skip_default=false, conn=Docker.connection)
hashes = conn.get('/networks')
hashes.select { |h| !skip_default || !h['Name'].in?(DEFAULT_NETWORKS) }
.map{ |h| new(conn, h) }
end
|
.create(init_spec, conn = Docker.connection) ⇒ Object
31
32
33
|
# File 'lib/algo/docker/network.rb', line 31
def self.create(init_spec, conn=Docker.connection)
new(conn, conn.post("/networks/create", nil, body: JSON.generate(init_spec)))
end
|
.find(id, conn = Docker.connection) ⇒ Object
23
24
25
|
# File 'lib/algo/docker/network.rb', line 23
def self.find(id, conn=Docker.connection)
new(conn, conn.get("/networks/#{id}"))
end
|
.remove(id_or_name, conn = Docker.connection) ⇒ Object
27
28
29
|
# File 'lib/algo/docker/network.rb', line 27
def self.remove(id_or_name, conn=Docker.connection)
conn.delete("/networks/#{id_or_name}")
end
|
Instance Method Details
#info ⇒ Object
10
11
12
13
|
# File 'lib/algo/docker/network.rb', line 10
def info
@info = self.class.find(@info["Id"]).info unless @info["Name"]
@info
end
|
#inspect ⇒ Object
6
7
8
|
# File 'lib/algo/docker/network.rb', line 6
def inspect
"<Algo::Docker::Network name=#{info['Name']} scope=#{info['Scope']}>"
end
|
#remove ⇒ Object
19
20
21
|
# File 'lib/algo/docker/network.rb', line 19
def remove
self.class.remove @info['Id']
end
|
#to_h ⇒ Object
15
16
17
|
# File 'lib/algo/docker/network.rb', line 15
def to_h
@info
end
|