mirror of
https://github.com/jpetazzo/container.training.git
synced 2026-03-02 17:30:20 +00:00
wip
This commit is contained in:
@@ -11,7 +11,7 @@ ports = yaml.load(open("ports.yml"))
|
||||
|
||||
project_name = os.path.basename(os.path.realpath("."))
|
||||
|
||||
ambassadors = {}
|
||||
ambassadors = []
|
||||
|
||||
service_instances = {}
|
||||
|
||||
@@ -25,7 +25,7 @@ for service_name in stack:
|
||||
container_name = "{}_{}_{}".format(project_name, service_name, n)
|
||||
subprocess.check_call(
|
||||
[ "docker", "inspect", container_name ],
|
||||
stderr=open("/dev/null","a")
|
||||
stdout=-1, stderr=-1
|
||||
)
|
||||
service_instances[service_name].append(container_name)
|
||||
except subprocess.CalledProcessError:
|
||||
@@ -40,13 +40,13 @@ for service_name, service in stack.items():
|
||||
"Your code will probably break."
|
||||
.format(link, service_name))
|
||||
continue
|
||||
port = ports[link_name]
|
||||
port = str(ports[link_name])
|
||||
endpoints = []
|
||||
for container_name in service_instances[link_name]:
|
||||
endpoint = subprocess.check_output(
|
||||
["docker", "port", container_name, port]
|
||||
)
|
||||
endpoints.append(port)
|
||||
endpoints.append(endpoint.strip())
|
||||
print("Endpoints found for {}->{}:".format(service_name, link_name))
|
||||
print(endpoints)
|
||||
for container_name in service_instances[service_name]:
|
||||
@@ -55,9 +55,12 @@ for service_name, service in stack.items():
|
||||
ambassador["net"] = "container:"+container_name
|
||||
command = "{}:{}".format(link_addr, port)
|
||||
for endpoint in endpoints:
|
||||
command = command + " {} {}".format(endpoint.split(':'))
|
||||
command = command + " {} {}".format(*endpoint.split(':'))
|
||||
ambassador["command"] = command
|
||||
n = len(ambassadors)
|
||||
ambassadors["amba{}".format(n)] = ambassador
|
||||
ambassador["name"] = "amba{}".format(n)
|
||||
ambassadors.append(ambassador)
|
||||
|
||||
for amba in ambassadors:
|
||||
print("docker run -d --name {name} --net {net} {image} {command}".format(**amba))
|
||||
|
||||
yaml.safe_dump(open("ambassadors.yml", "w"))
|
||||
Reference in New Issue
Block a user