diff options
author | Joffrey F <joffrey@docker.com> | 2015-09-15 01:08:09 +0200 |
---|---|---|
committer | Joffrey F <joffrey@docker.com> | 2015-09-15 01:11:11 +0200 |
commit | 0610efbce0e7c6bfe15e8eedc3f95877bf5ac481 (patch) | |
tree | 44d2be366ed4e04f3bb9679d7e094a709d87717d | |
parent | e5fbc42dcb25a1cd613cbe3ba69a1dde9b176bad (diff) | |
download | docker-py-0610efbce0e7c6bfe15e8eedc3f95877bf5ac481.tar.gz |
Support group_add param in host configgroup_add_support
Signed-off-by: Joffrey F <joffrey@docker.com>
-rw-r--r-- | docker/utils/utils.py | 9 | ||||
-rw-r--r-- | docs/hostconfig.md | 21 |
2 files changed, 22 insertions, 8 deletions
diff --git a/docker/utils/utils.py b/docker/utils/utils.py index edd6fa9..6084efb 100644 --- a/docker/utils/utils.py +++ b/docker/utils/utils.py @@ -449,7 +449,7 @@ def create_host_config( restart_policy=None, cap_add=None, cap_drop=None, devices=None, extra_hosts=None, read_only=None, pid_mode=None, ipc_mode=None, security_opt=None, ulimits=None, log_config=None, mem_limit=None, - memswap_limit=None, cgroup_parent=None, version=None + memswap_limit=None, cgroup_parent=None, group_add=None, version=None ): host_config = {} @@ -509,6 +509,13 @@ def create_host_config( if devices: host_config['Devices'] = parse_devices(devices) + if group_add: + if compare_version(version, '1.20') < 0: + raise errors.InvalidVersion( + 'group_add param not supported for API version < 1.20' + ) + host_config['GroupAdd'] = [str(grp) for grp in group_add] + if dns is not None: host_config['Dns'] = dns diff --git a/docs/hostconfig.md b/docs/hostconfig.md index eb796a5..eea9d1c 100644 --- a/docs/hostconfig.md +++ b/docs/hostconfig.md @@ -1,6 +1,7 @@ # HostConfig object -The Docker Remote API introduced [support for HostConfig in version 1.15](http://docs.docker.com/reference/api/docker_remote_api_v1.15/#create-a-container). This object contains all the parameters you could previously pass to `Client.start`. +The Docker Remote API introduced [support for HostConfig in version 1.15](http://docs.docker.com/reference/api/docker_remote_api_v1.15/#create-a-container). +This object contains all the parameters you could previously pass to `Client.start`. *It is highly recommended that users pass the HostConfig in the `host_config`* *param of `Client.create_container` instead of `Client.start`* @@ -71,15 +72,16 @@ for example: for more information. * lxc_conf (dict): LXC config * publish_all_ports (bool): Whether to publish all ports to the host -* links (dict or list of tuples): either as a dictionary mapping name to alias or - as a list of `(name, alias)` tuples +* links (dict or list of tuples): either as a dictionary mapping name to alias + or as a list of `(name, alias)` tuples * privileged (bool): Give extended privileges to this container * dns (list): Set custom DNS servers * dns_search (list): DNS search domains * volumes_from (str or list): List of container names or Ids to get volumes from. Optionally a single string joining container id's with commas * network_mode (str): One of `['bridge', None, 'container:<name|id>', 'host']` -* restart_policy (dict): "Name" param must be one of `['on-failure', 'always']` +* restart_policy (dict): "Name" param must be one of + `['on-failure', 'always']` * cap_add (list of str): Add kernel capabilities * cap_drop (list of str): Drop kernel capabilities * extra_hosts (dict): custom host-to-IP mappings (host:ip) @@ -91,9 +93,14 @@ for example: systems, such as SELinux. * ulimits (list): A list of dicts or `docker.utils.Ulimit` objects. A list of ulimits to be set in the container. -* log_config (`docker.utils.LogConfig` or dict): Logging configuration to container -* mem_limit (str or num): Maximum amount of memory container is allowed to consume. (e.g. `'1g'`) -* memswap_limit (str or num): Maximum amount of memory + swap a container is allowed to consume. +* log_config (`docker.utils.LogConfig` or dict): Logging configuration to + container +* mem_limit (str or num): Maximum amount of memory container is allowed to + consume. (e.g. `'1g'`) +* memswap_limit (str or num): Maximum amount of memory + swap a container is + allowed to consume. +* group_add (list): List of additional group names and/or IDs that the + container process will run as. **Returns** (dict) HostConfig dictionary |