1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/daemon
Brian Goff 360d59662f Fix loading of containerized plugins
During daemon startup, all containers are registered before any are
started.
During container registration it was calling out to initialize volumes.
If the volume uses a plugin that is running in a container, this will
cause the restart of that container to fail since the plugin is not yet
running.
This also slowed down daemon startup since volume initialization was
happening sequentially, which can be slow (and is flat out slow since
initialization would fail but take 8 seconds for each volume to do it).

This fix holds off on volume initialization until after containers are
restarted and does the initialization in parallel.

The containers that are restarted will have thier volumes initialized
because they are being started. If any of these containers are using a
plugin they will just keep retrying to reach the plugin (up to the
timeout, which is 8seconds) until the container with the plugin is up
and running.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-01-26 12:58:50 -08:00
..
daemonbuilder Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
events Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
exec Fix race condition in execCommandGC 2016-01-26 12:58:49 -08:00
execdriver add send, recv, and x32 so we can install i386 pkgs on amd64 2016-01-26 12:58:47 -08:00
graphdriver Merge pull request #19123 from shishir-a412ed/rootfs_size_configurable 2016-01-13 13:22:08 -08:00
links
logger only close LogDriver after LogCopier is done 2016-01-26 12:58:46 -08:00
network Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
archive.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
archive_unix.go
archive_windows.go
attach.go Implement configurable detach key 2016-01-03 23:03:39 +01:00
changes.go
commit.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
config.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
config_experimental.go Move userns support out of experimental into master 2016-01-08 15:06:22 -05:00
config_stub.go
config_test.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
config_unix.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
config_windows.go
container_operations.go
container_operations_unix.go Fix #19477, clean up the ports when release network 2016-01-26 12:58:50 -08:00
container_operations_windows.go Forced endpoint cleanup 2016-01-13 21:28:52 -08:00
create.go Allow user to choose the IP address for the container 2016-01-08 10:09:16 -08:00
create_unix.go Merge pull request #19155 from coolljt0725/create_cwd_on_create 2016-01-14 09:13:44 -08:00
create_windows.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
daemon.go Fix loading of containerized plugins 2016-01-26 12:58:50 -08:00
daemon_experimental.go Move userns support out of experimental into master 2016-01-08 15:06:22 -05:00
daemon_linux.go
daemon_linux_test.go
daemon_stub.go Move userns support out of experimental into master 2016-01-08 15:06:22 -05:00
daemon_test.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
daemon_unix.go Merge pull request #19311 from estesp/no-oom-warning-when-cant-even 2016-01-13 13:43:37 -08:00
daemon_unix_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
daemon_unsupported.go
daemon_windows.go Move userns support out of experimental into master 2016-01-08 15:06:22 -05:00
debugtrap_unix.go
debugtrap_unsupported.go
debugtrap_windows.go
delete.go Build names and links at runtime 2016-01-07 14:10:42 -05:00
delete_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
discovery.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
discovery_test.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
errors.go
events.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
events_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
exec.go Fix panic on starting exec more than once 2016-01-26 12:58:45 -08:00
exec_unix.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
exec_windows.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
export.go
history.go
image_delete.go Use bitmask for conflict checking 2016-01-12 16:01:56 -08:00
images.go Fix image filter 2016-01-14 08:17:40 +00:00
import.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
info.go Allow to set daemon and server configurations in a file. 2016-01-14 16:44:37 -05:00
inspect.go Build names and links at runtime 2016-01-07 14:10:42 -05:00
inspect_unix.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
inspect_windows.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
kill.go
links.go Add migration from sqlite links back to hostConfig 2016-01-11 11:31:29 -05:00
links_test.go Add migration from sqlite links back to hostConfig 2016-01-11 11:31:29 -05:00
list.go Merge pull request #19194 from LK4D4/fix_race_clean_net 2016-01-12 13:28:50 -05:00
list_unix.go
list_windows.go
logdrivers_linux.go
logdrivers_windows.go
logs.go
mounts.go Remove duplicated lazy volume initialization. 2016-01-13 11:22:31 -05:00
network.go Add IPAM Config Options to match libnetwork 2016-01-14 14:32:25 -05:00
pause.go
README.md
rename.go Build names and links at runtime 2016-01-07 14:10:42 -05:00
resize.go
restart.go
selinux_linux.go
selinux_unsupported.go
start.go Revert "Break big lock into some tiny locks" 2016-01-14 13:38:09 -05:00
stats.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
stats_collector_unix.go
stats_collector_windows.go
stats_freebsd.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
stats_linux.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
stats_windows.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
stop.go
top_unix.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
top_windows.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
unpause.go
update.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00
volumes.go Fix loading of containerized plugins 2016-01-26 12:58:50 -08:00
volumes_unit_test.go
volumes_unix.go Remove duplicated lazy volume initialization. 2016-01-13 11:22:31 -05:00
volumes_windows.go Remove duplicated lazy volume initialization. 2016-01-13 11:22:31 -05:00
wait.go

This directory contains code pertaining to running containers and storing images

Code pertaining to running containers:

  • execdriver

Code pertaining to storing images:

  • graphdriver