{"action":"created","issue":{"url":"https://api.github.com/repos/ehazlett/interlock/issues/64","labels_url":"https://api.github.com/repos/ehazlett/interlock/issues/64/labels{/name}","comments_url":"https://api.github.com/repos/ehazlett/interlock/issues/64/comments","events_url":"https://api.github.com/repos/ehazlett/interlock/issues/64/events","html_url":"https://github.com/ehazlett/interlock/issues/64","id":117919144,"number":64,"title":"Multi host networking...","user":{"login":"alvinr","id":336450,"avatar_url":"https://avatars.githubusercontent.com/u/336450?v=3","gravatar_id":"","url":"https://api.github.com/users/alvinr","html_url":"https://github.com/alvinr","followers_url":"https://api.github.com/users/alvinr/followers","following_url":"https://api.github.com/users/alvinr/following{/other_user}","gists_url":"https://api.github.com/users/alvinr/gists{/gist_id}","starred_url":"https://api.github.com/users/alvinr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alvinr/subscriptions","organizations_url":"https://api.github.com/users/alvinr/orgs","repos_url":"https://api.github.com/users/alvinr/repos","events_url":"https://api.github.com/users/alvinr/events{/privacy}","received_events_url":"https://api.github.com/users/alvinr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-11-19T22:07:56Z","updated_at":"2015-11-19T22:58:17Z","closed_at":null,"body":"# Problem\r\nThe \"multihost\" branch provided a mechanism to get Interlock to forward requests via the internal network to the Web container. It also relaxed the need to specify a an External Port of the Web container.\r\n\r\nGiven that Multi-host networking is now \"GA\", what's the recommended way to do this now?"},"comment":{"url":"https://api.github.com/repos/ehazlett/interlock/issues/comments/158227105","html_url":"https://github.com/ehazlett/interlock/issues/64#issuecomment-158227105","issue_url":"https://api.github.com/repos/ehazlett/interlock/issues/64","id":158227105,"user":{"login":"alvinr","id":336450,"avatar_url":"https://avatars.githubusercontent.com/u/336450?v=3","gravatar_id":"","url":"https://api.github.com/users/alvinr","html_url":"https://github.com/alvinr","followers_url":"https://api.github.com/users/alvinr/followers","following_url":"https://api.github.com/users/alvinr/following{/other_user}","gists_url":"https://api.github.com/users/alvinr/gists{/gist_id}","starred_url":"https://api.github.com/users/alvinr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alvinr/subscriptions","organizations_url":"https://api.github.com/users/alvinr/orgs","repos_url":"https://api.github.com/users/alvinr/repos","events_url":"https://api.github.com/users/alvinr/events{/privacy}","received_events_url":"https://api.github.com/users/alvinr/received_events","type":"User","site_admin":false},"created_at":"2015-11-19T22:58:17Z","updated_at":"2015-11-19T22:58:17Z","body":"So it looks like the vendoring in Container Info reflect 1.8, not the changes to to allow multiple networks, see\r\n\r\nhttps://github.com/ehazlett/interlock/blob/master/vendor/github.com/samalba/dockerclient/types.go\r\n\r\n```\r\nvero:prod$ docker inspect prod_haproxy_1\r\n[\r\n{\r\n    \"Id\": \"37be7ee98d459b260d57f5f7cbe9604700e7fec2d3211b034058306af707f724\",\r\n    \"Created\": \"2015-11-19T22:47:52.733142071Z\",\r\n    \"Path\": \"/usr/local/bin/interlock\",\r\n    \"Args\": [\r\n        \"--swarm-url=tcp://172.16.145.151:3376\",\r\n        \"--swarm-tls-ca-cert=/etc/docker/ca.pem\",\r\n        \"--swarm-tls-cert=/etc/docker/server.pem\",\r\n        \"--swarm-tls-key=/etc/docker/server-key.pem\",\r\n        \"--debug\",\r\n        \"--plugin\",\r\n        \"haproxy\",\r\n        \"start\"\r\n    ],\r\n    \"State\": {\r\n        \"Status\": \"running\",\r\n        \"Running\": true,\r\n        \"Paused\": false,\r\n        \"Restarting\": false,\r\n        \"OOMKilled\": false,\r\n        \"Dead\": false,\r\n        \"Pid\": 3194,\r\n        \"ExitCode\": 0,\r\n        \"Error\": \"\",\r\n        \"StartedAt\": \"2015-11-19T22:47:53.013997679Z\",\r\n        \"FinishedAt\": \"0001-01-01T00:00:00Z\"\r\n    },\r\n    \"Image\": \"4d8ba5bcbad5d2307c32ffc3bba84576be0ce315f506cb830b3ca51f231c3b6e\",\r\n    \"ResolvConfPath\": \"/mnt/sda1/var/lib/docker/containers/37be7ee98d459b260d57f5f7cbe9604700e7fec2d3211b034058306af707f724/resolv.conf\",\r\n    \"HostnamePath\": \"/mnt/sda1/var/lib/docker/containers/37be7ee98d459b260d57f5f7cbe9604700e7fec2d3211b034058306af707f724/hostname\",\r\n    \"HostsPath\": \"/mnt/sda1/var/lib/docker/containers/37be7ee98d459b260d57f5f7cbe9604700e7fec2d3211b034058306af707f724/hosts\",\r\n    \"LogPath\": \"/mnt/sda1/var/lib/docker/containers/37be7ee98d459b260d57f5f7cbe9604700e7fec2d3211b034058306af707f724/37be7ee98d459b260d57f5f7cbe9604700e7fec2d3211b034058306af707f724-json.log\",\r\n    \"Node\": {\r\n        \"ID\": \"VZ7K:OSGN:RARI:O5V6:5POE:M5BJ:R4RV:75T5:TALE:WLWW:PUBB:YUFA\",\r\n        \"IP\": \"172.16.145.151\",\r\n        \"Addr\": \"172.16.145.151:2376\",\r\n        \"Name\": \"swarm-0\",\r\n        \"Cpus\": 1,\r\n        \"Memory\": 1044512768,\r\n        \"Labels\": {\r\n            \"executiondriver\": \"native-0.2\",\r\n            \"kernelversion\": \"4.1.13-boot2docker\",\r\n            \"operatingsystem\": \"Boot2Docker 1.9.1-rc1 (TCL 6.4.1); master : f651ad2 - Fri Nov 13 21:34:45 UTC 2015\",\r\n            \"provider\": \"vmwarefusion\",\r\n            \"storagedriver\": \"aufs\"\r\n        }\r\n    },\r\n    \"Name\": \"/prod_haproxy_1\",\r\n    \"RestartCount\": 0,\r\n    \"Driver\": \"aufs\",\r\n    \"ExecDriver\": \"native-0.2\",\r\n    \"MountLabel\": \"\",\r\n    \"ProcessLabel\": \"\",\r\n    \"AppArmorProfile\": \"\",\r\n    \"ExecIDs\": null,\r\n    \"HostConfig\": {\r\n        \"Binds\": [\r\n            \"/var/lib/boot2docker:/etc/docker:rw\"\r\n        ],\r\n        \"ContainerIDFile\": \"\",\r\n        \"LxcConf\": null,\r\n        \"Memory\": 0,\r\n        \"MemoryReservation\": 0,\r\n        \"MemorySwap\": 0,\r\n        \"KernelMemory\": 0,\r\n        \"CpuShares\": 0,\r\n        \"CpuPeriod\": 0,\r\n        \"CpusetCpus\": \"\",\r\n        \"CpusetMems\": \"\",\r\n        \"CpuQuota\": 0,\r\n        \"BlkioWeight\": 0,\r\n        \"OomKillDisable\": false,\r\n        \"MemorySwappiness\": 0,\r\n        \"Privileged\": false,\r\n        \"PortBindings\": {\r\n            \"8080/tcp\": [\r\n                {\r\n                    \"HostIp\": \"\",\r\n                    \"HostPort\": \"80\"\r\n                }\r\n            ]\r\n        },\r\n        \"Links\": null,\r\n        \"PublishAllPorts\": false,\r\n        \"Dns\": null,\r\n        \"DnsOptions\": null,\r\n        \"DnsSearch\": null,\r\n        \"ExtraHosts\": [],\r\n        \"VolumesFrom\": [],\r\n        \"Devices\": null,\r\n        \"NetworkMode\": \"bridge\",\r\n        \"IpcMode\": \"\",\r\n        \"PidMode\": \"\",\r\n        \"UTSMode\": \"\",\r\n        \"CapAdd\": null,\r\n        \"CapDrop\": null,\r\n        \"GroupAdd\": null,\r\n        \"RestartPolicy\": {\r\n            \"Name\": \"\",\r\n            \"MaximumRetryCount\": 0\r\n        },\r\n        \"SecurityOpt\": null,\r\n        \"ReadonlyRootfs\": false,\r\n        \"Ulimits\": null,\r\n        \"LogConfig\": {\r\n            \"Type\": \"json-file\",\r\n            \"Config\": {}\r\n        },\r\n        \"CgroupParent\": \"\",\r\n        \"ConsoleSize\": [\r\n            0,\r\n            0\r\n        ],\r\n        \"VolumeDriver\": \"\"\r\n    },\r\n    \"GraphDriver\": {\r\n        \"Name\": \"aufs\",\r\n        \"Data\": null\r\n    },\r\n    \"Mounts\": [\r\n        {\r\n            \"Source\": \"/var/lib/boot2docker\",\r\n            \"Destination\": \"/etc/docker\",\r\n            \"Mode\": \"rw\",\r\n            \"RW\": true\r\n        }\r\n    ],\r\n    \"Config\": {\r\n        \"Hostname\": \"37be7ee98d45\",\r\n        \"Domainname\": \"\",\r\n        \"User\": \"\",\r\n        \"AttachStdin\": false,\r\n        \"AttachStdout\": false,\r\n        \"AttachStderr\": false,\r\n        \"ExposedPorts\": {\r\n            \"443/tcp\": {},\r\n            \"80/tcp\": {},\r\n            \"8080/tcp\": {}\r\n        },\r\n        \"Tty\": false,\r\n        \"OpenStdin\": false,\r\n        \"StdinOnce\": false,\r\n        \"Env\": [\r\n            \"DOCKER_HOST=tcp://172.16.145.151:3376\",\r\n            \"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\r\n        ],\r\n        \"Cmd\": [\r\n            \"--swarm-url=tcp://172.16.145.151:3376\",\r\n            \"--swarm-tls-ca-cert=/etc/docker/ca.pem\",\r\n            \"--swarm-tls-cert=/etc/docker/server.pem\",\r\n            \"--swarm-tls-key=/etc/docker/server-key.pem\",\r\n            \"--debug\",\r\n            \"--plugin\",\r\n            \"haproxy\",\r\n            \"start\"\r\n        ],\r\n        \"Image\": \"ehazlett/interlock:latest\",\r\n        \"Volumes\": {\r\n            \"/etc/docker\": {}\r\n        },\r\n        \"WorkingDir\": \"\",\r\n        \"Entrypoint\": [\r\n            \"/usr/local/bin/interlock\"\r\n        ],\r\n        \"OnBuild\": null,\r\n        \"Labels\": {\r\n            \"com.docker.compose.config-hash\": \"75af2cf7e7233221883abbe05f7fb24861db9277c3080366b0ccb4a106bd25c8\",\r\n            \"com.docker.compose.container-number\": \"1\",\r\n            \"com.docker.compose.oneoff\": \"False\",\r\n            \"com.docker.compose.project\": \"prod\",\r\n            \"com.docker.compose.service\": \"haproxy\",\r\n            \"com.docker.compose.version\": \"1.5.1\",\r\n            \"com.docker.swarm.constraints\": \"[\\\"node==swarm-0\\\"]\",\r\n            \"com.docker.swarm.id\": \"10013c406ac4c909f99263af60c9ca17cddfb4b66ff784e4737cff55288d91c0\"\r\n        }\r\n    },\r\n    \"NetworkSettings\": {\r\n        \"Bridge\": \"\",\r\n        \"SandboxID\": \"d482d55814c3f7e9576e6f36ed434581eb5ffd78366cb9b14b34c7f9c7d9c16a\",\r\n        \"HairpinMode\": false,\r\n        \"LinkLocalIPv6Address\": \"\",\r\n        \"LinkLocalIPv6PrefixLen\": 0,\r\n        \"Ports\": {\r\n            \"443/tcp\": null,\r\n            \"80/tcp\": null,\r\n            \"8080/tcp\": [\r\n                {\r\n                    \"HostIp\": \"172.16.145.151\",\r\n                    \"HostPort\": \"80\"\r\n                }\r\n            ]\r\n        },\r\n        \"SandboxKey\": \"/var/run/docker/netns/d482d55814c3\",\r\n        \"SecondaryIPAddresses\": null,\r\n        \"SecondaryIPv6Addresses\": null,\r\n        \"EndpointID\": \"1ec99b6ae1f1317541c01debb5ad5e8615b755dbfcec6033eb2132ba96de4608\",\r\n        \"Gateway\": \"172.17.0.1\",\r\n        \"GlobalIPv6Address\": \"\",\r\n        \"GlobalIPv6PrefixLen\": 0,\r\n        \"IPAddress\": \"172.17.0.4\",\r\n        \"IPPrefixLen\": 16,\r\n        \"IPv6Gateway\": \"\",\r\n        \"MacAddress\": \"02:42:ac:11:00:04\",\r\n        \"Networks\": {\r\n            \"bridge\": {\r\n                \"EndpointID\": \"1ec99b6ae1f1317541c01debb5ad5e8615b755dbfcec6033eb2132ba96de4608\",\r\n                \"Gateway\": \"172.17.0.1\",\r\n                \"IPAddress\": \"172.17.0.4\",\r\n                \"IPPrefixLen\": 16,\r\n                \"IPv6Gateway\": \"\",\r\n                \"GlobalIPv6Address\": \"\",\r\n                \"GlobalIPv6PrefixLen\": 0,\r\n                \"MacAddress\": \"02:42:ac:11:00:04\"\r\n            },\r\n            \"prod\": {\r\n                \"EndpointID\": \"91ecf9d5975db43fd5cef576da555550a01ba61e2aa75219f66e65103adeec02\",\r\n                \"Gateway\": \"\",\r\n                \"IPAddress\": \"10.0.0.4\",\r\n                \"IPPrefixLen\": 24,\r\n                \"IPv6Gateway\": \"\",\r\n                \"GlobalIPv6Address\": \"\",\r\n                \"GlobalIPv6PrefixLen\": 0,\r\n                \"MacAddress\": \"02:42:0a:00:00:04\"\r\n            }\r\n        }\r\n    }\r\n}\r\n]\r\n```"}}