From f98323b79e8371df63dd448064d1255fa86dbf1c Mon Sep 17 00:00:00 2001 From: Andrew Burkett Date: Thu, 6 Nov 2014 16:19:58 -0800 Subject: [PATCH] Support multiple port mappings for same internal port Signed-off-by: Andrew Burkett --- fig/service.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/fig/service.py b/fig/service.py index e6dcf01281..0648aeb872 100644 --- a/fig/service.py +++ b/fig/service.py @@ -251,7 +251,13 @@ class Service(object): def start_container(self, container=None, intermediate_container=None, **override_options): container = container or self.create_container(**override_options) options = dict(self.options, **override_options) - ports = dict(split_port(port) for port in options.get('ports') or []) + ports = {} + for port in options.get('ports') or []: + internal_port, external = split_port(port) + if internal_port in ports: + ports[internal_port].append(external) + else: + ports[internal_port] = [external] volume_bindings = dict( build_volume_binding(parse_volume_spec(volume))