diff --git a/compose/config.py b/compose/config.py index efc50075e..cbdeca2d0 100644 --- a/compose/config.py +++ b/compose/config.py @@ -23,6 +23,7 @@ DOCKER_CONFIG_KEYS = [ 'image', 'labels', 'links', + 'mac_address', 'mem_limit', 'net', 'log_driver', diff --git a/docs/yml.md b/docs/yml.md index 80d6d719f..798f8918a 100644 --- a/docs/yml.md +++ b/docs/yml.md @@ -365,7 +365,7 @@ security_opt: - label:role:ROLE ``` -### working\_dir, entrypoint, user, hostname, domainname, mem\_limit, privileged, restart, stdin\_open, tty, cpu\_shares, cpuset, read\_only +### working\_dir, entrypoint, user, hostname, domainname, mac\_address, mem\_limit, privileged, restart, stdin\_open, tty, cpu\_shares, cpuset, read\_only Each of these is a single value, analogous to its [docker run](https://docs.docker.com/reference/run/) counterpart. @@ -381,6 +381,8 @@ user: postgresql hostname: foo domainname: foo.com +mac_address: 02:42:ac:11:65:43 + mem_limit: 1000000000 privileged: true @@ -389,6 +391,7 @@ restart: always stdin_open: true tty: true read_only: true + ``` ## Compose documentation diff --git a/tests/integration/service_test.py b/tests/integration/service_test.py index 3b3ac22f9..c95ae07b9 100644 --- a/tests/integration/service_test.py +++ b/tests/integration/service_test.py @@ -199,6 +199,12 @@ class ServiceTest(DockerClientTestCase): service.start_container(container) self.assertEqual(set(container.get('HostConfig.SecurityOpt')), set(security_opt)) + def test_create_container_with_mac_address(self): + service = self.create_service('db', mac_address='02:42:ac:11:65:43') + container = service.create_container() + service.start_container(container) + self.assertEqual(container.inspect()['Config']['MacAddress'], '02:42:ac:11:65:43') + def test_create_container_with_specified_volume(self): host_path = '/tmp/host-path' container_path = '/container-path'