mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
![]() This disentangles the following functions, which were previously all mixed together: * 1) Waiting for jobs to terminate when shutting down * 2) Handling signals in the Docker daemon * 3) Per-subsystem cleanup handlers * 4) pidfile management Responsibilities are dispatched as follows: * Signal traps are set in `main`, and trigger `engine.Shutdown` * `engine.Shutdown` coordinates cleanup by waiting for jobs to complete, and calling shutdown handlers * To perform cleanup at shutdown, each subsystem registers handlers with `engine.OnShutdown` * `daemon` is one subsystem, so it registers cleanup via `engine.OnShutdown`. * `daemon` owns the pidfile, which is used to lock access to `/var/lib/docker`. Part of its cleanup is to remove the pidfile. Signed-off-by: Solomon Hykes <solomon@docker.com> |
||
---|---|---|
.. | ||
image.go | ||
init.go | ||
MAINTAINERS | ||
server.go | ||
server_unit_test.go |