Kaydet (Commit) 0de366da authored tarafından Joffrey F's avatar Joffrey F

Add support for link-local IPs in endpoint config

Signed-off-by: 's avatarJoffrey F <joffrey@docker.com>
üst 9010d594
......@@ -60,12 +60,13 @@ class NetworkApiMixin(object):
@minimum_version('1.21')
def connect_container_to_network(self, container, net_id,
ipv4_address=None, ipv6_address=None,
aliases=None, links=None):
aliases=None, links=None,
link_local_ips=None):
data = {
"Container": container,
"EndpointConfig": self.create_endpoint_config(
aliases=aliases, links=links, ipv4_address=ipv4_address,
ipv6_address=ipv6_address
ipv6_address=ipv6_address, link_local_ips=link_local_ips
),
}
......
......@@ -873,7 +873,8 @@ def create_networking_config(endpoints_config=None):
def create_endpoint_config(version, aliases=None, links=None,
ipv4_address=None, ipv6_address=None):
ipv4_address=None, ipv6_address=None,
link_local_ips=None):
if version_lt(version, '1.22'):
raise errors.InvalidVersion(
'Endpoint config is not supported for API version < 1.22'
......@@ -896,6 +897,13 @@ def create_endpoint_config(version, aliases=None, links=None,
if ipam_config:
endpoint_config['IPAMConfig'] = ipam_config
if link_local_ips is not None:
if version_lt(version, '1.24'):
raise errors.InvalidVersion(
'link_local_ips is not supported for API version < 1.24'
)
endpoint_config['LinkLocalIPs'] = link_local_ips
return endpoint_config
......
......@@ -179,6 +179,16 @@ Connect a container to a network.
* container (str): container-id/name to be connected to the network
* net_id (str): network id
* aliases (list): A list of aliases for this endpoint. Names in that list can
be used within the network to reach the container. Defaults to `None`.
* links (list): A list of links for this endpoint. Containers declared in this
list will be [linked](https://docs.docker.com/engine/userguide/networking/work-with-networks/#linking-containers-in-user-defined-networks)
to this container. Defaults to `None`.
* ipv4_address (str): The IP address of this container on the network,
using the IPv4 protocol. Defaults to `None`.
* ipv6_address (str): The IP address of this container on the network,
using the IPv6 protocol. Defaults to `None`.
* link_local_ips (list): A list of link-local (IPv4/IPv6) addresses.
## copy
Identical to the `docker cp` command. Get files/folders from the container.
......
......@@ -107,6 +107,7 @@ Create an endpoint config dictionary to be used with
using the IPv4 protocol. Defaults to `None`.
* ipv6_address (str): The IP address of this container on the network,
using the IPv6 protocol. Defaults to `None`.
* link_local_ips (list): A list of link-local (IPv4/IPv6) addresses.
**Returns** An endpoint config dictionary.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment