1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/daemon
Aaron Lehmann a0ccd0d42f Split advertised address from listen address
There are currently problems with "swarm init" and "swarm join" when an
explicit --listen-addr flag is not provided. swarmkit defaults to
finding the IP address associated with the default route, and in cloud
setups this is often the wrong choice.

Introduce a notion of "advertised address", with the client flag
--advertise-addr, and the daemon flag --swarm-default-advertise-addr to
provide a default. The default listening address is now 0.0.0.0, but a
valid advertised address must be detected or specified.

If no explicit advertised address is specified, error out if there is
more than one usable candidate IP address on the system. This requires a
user to explicitly choose instead of letting swarmkit make the wrong
choice. For the purposes of this autodetection, we ignore certain
interfaces that are unlikely to be relevant (currently docker*).

The user is also required to choose a listen address on swarm init if
they specify an explicit advertise address that is a hostname or an IP
address that's not local to the system. This is a requirement for
overlay networking.

Also support specifying interface names to --listen-addr,
--advertise-addr, and the daemon flag --swarm-default-advertise-addr.
This will fail if the interface has multiple IP addresses (unless it has
a single IPv4 address and a single IPv6 address - then we resolve the
tie in favor of IPv4).

This change also exposes the node's externally-reachable address in
docker info, as requested by #24017.

Make corresponding API and CLI docs changes.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-07-24 09:23:07 -07:00
..
caps Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
cluster Split advertised address from listen address 2016-07-24 09:23:07 -07:00
events Add filter for events emitted by docker daemon 2016-05-23 19:00:47 -07:00
exec Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
graphdriver Create zfs directory if it doesn't exist at startup. 2016-07-19 10:12:22 +10:00
links
logger daemon/logger: fix races in channel close 2016-06-27 14:14:23 -07:00
network api,daemon: cleanup some unused stuff 2016-06-21 14:15:19 -07:00
apparmor_default.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
apparmor_default_unsupported.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
archive.go Windows: docker cp consistent paths 2016-05-06 16:08:53 -07:00
archive_unix.go Windows: docker cp consistent paths 2016-05-06 16:08:53 -07:00
archive_windows.go Windows: Remove TP4 support from main code 2016-04-06 12:12:20 -07:00
attach.go Merge pull request #22777 from WeiZhang555/wait-restarting 2016-06-12 13:01:20 +02:00
auth.go Moving some more methods away from daemon.go 2016-05-27 11:32:26 +02:00
changes.go Move some container related methods and structs to smaller files 2016-05-24 21:31:15 +02:00
commit.go Windows: CMD not honouring arg escaping 2016-06-15 16:46:32 -07:00
config.go Split advertised address from listen address 2016-07-24 09:23:07 -07:00
config_experimental.go
config_solaris.go Daemon to support network restore 2016-06-14 16:45:25 -07:00
config_stub.go
config_test.go Add support for multiples runtimes 2016-06-14 07:47:31 -07:00
config_unix.go Improve flag help consistency, and update docs 2016-07-16 01:58:01 +02:00
config_windows.go Use "docker-runc" as alias for the default runtime 2016-06-22 11:59:26 -07:00
container.go Validate hostname starting from 1.24 API. 2016-07-06 09:13:59 +02:00
container_operations.go Fix regression on --link on bridge network 2016-07-22 18:52:46 -07:00
container_operations_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
container_operations_unix.go Add support for --pid=container:<id> 2016-05-17 13:49:05 -04:00
container_operations_windows.go Merge pull request #21809 from Microsoft/jjh/tp4removal 2016-04-06 14:11:33 -07:00
create.go Validate hostname starting from 1.24 API. 2016-07-06 09:13:59 +02:00
create_unix.go Merge pull request #21270 from ehazlett/resource-labels 2016-03-22 15:12:33 -04:00
create_windows.go Windows: Default isolation and workdir 2016-05-26 13:24:22 -07:00
daemon.go Split advertised address from listen address 2016-07-24 09:23:07 -07:00
daemon_experimental.go Shutdown plugins during daemon shutdown. 2016-07-11 14:21:27 -07:00
daemon_linux.go Fix container mount cleanup issues 2016-03-30 17:25:49 -07:00
daemon_linux_test.go Fix container mount cleanup issues 2016-03-30 17:25:49 -07:00
daemon_solaris.go Add --oom-score-adjust to daemon 2016-07-12 15:53:15 -07:00
daemon_stub.go Shutdown plugins during daemon shutdown. 2016-07-11 14:21:27 -07:00
daemon_test.go Wait for discovery on container start error 2016-05-11 09:49:51 -04:00
daemon_unix.go Vendor in new containerd 2016-07-18 11:44:24 -07:00
daemon_unix_test.go Daemon to support network restore 2016-06-14 16:45:25 -07:00
daemon_unsupported.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
daemon_windows.go Add --oom-score-adjust to daemon 2016-07-12 15:53:15 -07:00
debugtrap_unix.go
debugtrap_unsupported.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
debugtrap_windows.go Windows: psignal alias not required 2016-03-27 17:23:34 -07:00
delete.go Merge pull request #21802 from tiborvass/carry-21716 2016-04-06 15:21:38 -04:00
delete_test.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
discovery.go Wait for discovery on container start error 2016-05-11 09:49:51 -04:00
discovery_test.go Fix minor vet warnings 2016-02-03 10:43:01 -08:00
errors.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
events.go Add filter for events emitted by docker daemon 2016-05-23 19:00:47 -07:00
events_test.go Add the possibility to log event with specific attributes 2016-01-17 12:14:01 +01:00
exec.go Update libcontainerd.AddProcess to accept a context 2016-07-19 08:24:39 -07:00
exec_linux.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
exec_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
exec_windows.go Windows: escape entrypoint before passing to libcontainerd 2016-03-30 12:59:50 -07:00
export.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
health.go Merge pull request #23442 from thaJeztah/remove-defaultExitOnUnhealthy 2016-06-11 16:37:39 -07:00
health_test.go Add support for user-defined healthchecks 2016-06-02 23:58:34 +02:00
image.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_delete.go update "image delete" error to match actual behavior 2016-07-18 23:17:55 +02:00
image_exporter.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_history.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_inspect.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_pull.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
image_push.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
image_tag.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
images.go Treat digest only images as dangling 2016-06-30 11:32:49 -07:00
import.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
info.go Fix panic when meminfo couldn't be read 2016-07-12 15:30:21 -04:00
inspect.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00
inspect_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
inspect_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
inspect_windows.go Add Swarm management backend 2016-06-13 22:16:18 -07:00
keys.go Change root_maxkeys 2016-06-27 10:23:37 -07:00
keys_unsupported.go Change root_maxkeys 2016-06-27 10:23:37 -07:00
kill.go *: fix logrus.Warn[f] 2016-06-11 19:42:38 +02:00
links.go Add migration from sqlite links back to hostConfig 2016-01-11 11:31:29 -05:00
links_test.go Extract container store from the daemon. 2016-01-19 13:21:41 -05:00
list.go Fixes #23596-returns empty string for NetworkID in response to /containers/json 2016-06-16 12:34:00 -07:00
list_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
list_windows.go
logdrivers_linux.go daemon/logger: Add logging driver for Google Cloud Logging 2016-03-01 08:06:10 -08:00
logdrivers_windows.go Windows: Add ETW logging driver plug-in 2016-02-16 13:24:49 -08:00
logs.go Fix panic while merging log configs to nil map 2016-07-12 15:24:42 -04:00
logs_test.go Fix panic while merging log configs to nil map 2016-07-12 15:24:42 -04:00
monitor.go Fixing bug in AttachStreams that would fail to close StdIn 2016-06-16 17:34:45 -07:00
monitor_linux.go Adding postRunProcessing infrastructure for hanlding Windows Update. 2016-04-06 14:03:05 -07:00
monitor_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
monitor_windows.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00
mounts.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
names.go Moving some more methods away from daemon.go 2016-05-27 11:32:26 +02:00
network.go Handle ingress sbox creation gracefully 2016-07-12 21:51:44 -07:00
oci_linux.go fix some typos 2016-06-21 15:29:25 +08:00
oci_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
oci_windows.go Windows: Added support for memory limit 2016-06-15 17:07:29 -07:00
pause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
rename.go No need for container.Lock if rename same name 2016-06-24 19:55:48 +02:00
resize.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
restart.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
search.go Add --limit option to docker search 2016-06-02 19:12:20 -07:00
search_test.go Add --limit option to docker search 2016-06-02 19:12:20 -07:00
seccomp_disabled.go Fix seccomp output in docker info 2016-07-08 17:26:42 -07:00
seccomp_linux.go Fix seccomp output in docker info 2016-07-08 17:26:42 -07:00
seccomp_unsupported.go Fix seccomp output in docker info 2016-07-08 17:26:42 -07:00
selinux_linux.go
selinux_unsupported.go
start.go Improve error message for ENOTDIR errors 2016-07-18 11:12:33 -04:00
start_linux.go Update to new swarmkit/engine-api 2016-06-30 17:22:47 -07:00
start_windows.go Add support for multiples runtimes 2016-06-14 07:47:31 -07:00
stats.go cleanup: clean up commented code in daemon/stats.go 2016-06-02 14:39:12 +08:00
stats_collector_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
stats_collector_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
stats_collector_windows.go
stop.go Add support for user-defined healthchecks 2016-06-02 23:58:34 +02:00
top_unix.go Validate arguments for ps in docker top 2016-07-08 05:58:11 +00:00
top_unix_test.go Validate arguments for ps in docker top 2016-07-08 05:58:11 +00:00
top_windows.go Windows: Minimal docker top implementation 2016-03-20 16:45:53 -07:00
unpause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
update.go Soften limitation of update kernel memory 2016-07-12 08:07:24 +08:00
update_linux.go Update containerd and runc vendoring 2016-06-14 07:47:31 -07:00
update_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
update_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
volumes.go daemon: allow tmpfs to trump over VOLUME(s) 2016-06-15 16:01:51 +02:00
volumes_unit_test.go
volumes_unix.go daemon: allow tmpfs to trump over VOLUME(s) 2016-06-15 16:01:51 +02:00
volumes_windows.go Remove unneeded references to execDriver 2016-03-21 13:06:08 -07:00
wait.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00