moby/daemon
Brian Goff c3feb046b9 Allow stopping of paused container
When a container is paused, signals are sent once the container has been
unpaused.
Instead of forcing the user to unpause a container before they can ever
send a signal, allow the user to send the signals, and in the case of a
stop signal, automatically unpause the container afterwards.

This is much safer than unpausing the container first then sending a
signal (what a user is currently forced to do), as the container may be
paused for very good reasons and should not be unpaused except for
stopping.
Note that not even SIGKILL is possible while a process is paused,
but it is killed the instant it is unpaused.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-07-12 10:35:48 -04:00
..
caps Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
cluster Make plugin emit strongly typed, consumable events 2017-07-06 14:26:06 -04:00
config add NamedUlimitOpt implement NamedOption to fix 32528 2017-06-16 10:14:09 +08:00
discovery Spelling fixes 2017-07-03 13:13:09 -07:00
events Spelling fixes 2017-07-03 13:13:09 -07:00
exec Move StreamConfig out of runconfig 2016-11-14 15:15:09 -05:00
graphdriver Spelling fixes 2017-07-03 13:13:09 -07:00
initlayer Partial refactor of UID/GID usage to use a unified struct. 2017-06-07 11:44:33 -04:00
links use t.Fatal() to output the err message where the values used for formatting 2017-02-23 10:16:22 +08:00
logger Merge pull request #33713 from x1022as/error_fd 2017-07-06 16:47:34 -07:00
network Fix autostart for swarm scope connected containers 2016-09-13 14:21:58 -07:00
stats Do not treat C.sysconf(C._SC_NPROCESSORS_ONLN) non-zero errno as error 2017-06-01 18:23:49 +03:00
apparmor_default.go apparmor: make pkg/aaparser work on read-only root 2017-05-18 00:05:13 +10:00
apparmor_default_unsupported.go daemon: switch to 'ensure' workflow for AppArmor profiles 2016-12-07 08:47:28 +11:00
archive.go Fix copy when used with scratch and images with empty RootFS 2017-06-08 15:07:16 -04:00
archive_tarcopyoptions.go Partial refactor of UID/GID usage to use a unified struct. 2017-06-07 11:44:33 -04:00
archive_tarcopyoptions_unix.go Fix vfs unit test and port VFS to the new IDMappings 2017-06-07 11:44:34 -04:00
archive_tarcopyoptions_windows.go daemon/archive.go: Fix copy routines to preserve UID. 2017-04-12 10:33:19 +00:00
archive_unix.go Remove CopyOnBuild from the daemon. 2017-06-08 15:06:54 -04:00
archive_windows.go Remove CopyOnBuild from the daemon. 2017-06-08 15:06:54 -04:00
attach.go Add a restarting check to ContainerAttach 2017-05-20 11:27:45 +08:00
auth.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
bindmount_solaris.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
bindmount_unix.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
build.go Merge pull request #33241 from Microsoft/jjh/multi-layerstore 2017-06-21 15:45:23 -07:00
cache.go LCOW: Fix ImageCache to address right store 2017-06-20 19:49:53 -07:00
changes.go Windows: support docker diff 2016-10-28 11:06:54 -07:00
checkpoint.go Fix checkpoint ls 2017-05-18 10:57:10 +08:00
cluster.go Fix race condition between swarm and libnetwork 2017-05-10 21:16:52 -07:00
commit.go LCOW: Rework after 33454 merged which refactored daemon/builder interface 2017-06-20 19:50:13 -07:00
configs.go Add config support to executor backend 2017-05-11 10:08:21 -07:00
configs_linux.go Add config support to executor backend 2017-05-11 10:08:21 -07:00
configs_unsupported.go Add Windows configs support 2017-05-16 14:25:32 -07:00
configs_windows.go Add Windows configs support 2017-05-16 14:25:32 -07:00
container.go only Daemon.load needs to call label.ReserveLabel 2017-06-23 07:52:33 -07:00
container_linux.go Added an apparmorEnabled boolean in the Daemon struct to indicate if AppArmor is enabled or not. It is set in NewDaemon using sysInfo information. 2017-01-30 16:23:23 +01:00
container_operations.go Include Endpoint List for Shared Endpoints 2017-07-06 12:19:17 -07:00
container_operations_solaris.go Include Endpoint List for Shared Endpoints 2017-07-06 12:19:17 -07:00
container_operations_unix.go Include Endpoint List for Shared Endpoints 2017-07-06 12:19:17 -07:00
container_operations_windows.go Include Endpoint List for Shared Endpoints 2017-07-06 12:19:17 -07:00
container_windows.go Added an apparmorEnabled boolean in the Daemon struct to indicate if AppArmor is enabled or not. It is set in NewDaemon using sysInfo information. 2017-01-30 16:23:23 +01:00
create.go LCOW: Fix nits from 33241 2017-06-27 11:59:49 -07:00
create_unix.go Remove error return from RootPair 2017-06-07 11:45:33 -04:00
create_windows.go Windows: Revert 27884 2016-11-16 13:38:45 -08:00
daemon.go Allow stopping of paused container 2017-07-12 10:35:48 -04:00
daemon_experimental.go move plugins out of experimental 2016-11-10 15:51:32 -08:00
daemon_linux.go Skip evaluation of symlinks to data root on IoT Core 2017-06-13 15:02:35 -07:00
daemon_linux_test.go use t.Fatal() to output the err message where the values used for formatting 2017-02-23 10:16:22 +08:00
daemon_solaris.go Do not set -1 for swappiness 2017-07-03 11:23:15 -07:00
daemon_test.go LCOW: Remove CommonContainer - just Container 2017-06-20 08:55:46 -07:00
daemon_unix.go Do not set -1 for swappiness 2017-07-03 11:23:15 -07:00
daemon_unix_test.go avoid saving container state to disk before daemon.Register 2017-06-23 07:52:34 -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 Do not set -1 for swappiness 2017-07-03 11:23:15 -07:00
debugtrap_unix.go daemon: Remove daemon datastructure dump functionality 2017-06-08 14:08:49 -07:00
debugtrap_unsupported.go Spew debugging 2016-11-03 10:05:11 -07:00
debugtrap_windows.go daemon: Remove daemon datastructure dump functionality 2017-06-08 14:08:49 -07:00
delete.go save deep copies of Container in the replica store 2017-06-23 07:52:33 -07:00
delete_test.go LCOW: Remove CommonContainer - just Container 2017-06-20 08:55:46 -07:00
dependency.go Add config support to executor backend 2017-05-11 10:08:21 -07:00
disk_usage.go LCOW: Move daemon stores to per platform 2017-06-20 19:49:52 -07:00
errors.go Use distribution reference 2017-02-07 11:08:37 -08:00
events.go support cluster events 2017-05-17 11:46:30 -07:00
events_test.go LCOW: Remove CommonContainer - just Container 2017-06-20 08:55:46 -07:00
exec.go Update ContainerWait API 2017-05-16 15:11:39 -07:00
exec_linux.go daemon: also ensureDefaultApparmorProfile in exec path 2017-03-13 15:20:05 +11:00
exec_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
exec_windows.go LCOW: pass command arguments without extra quoting 2017-06-24 10:23:17 -07:00
export.go Partial refactor of UID/GID usage to use a unified struct. 2017-06-07 11:44:33 -04:00
getsize_unix.go LCOW: Move daemon stores to per platform 2017-06-20 19:49:52 -07:00
health.go Merge pull request #33781 from mlaventure/fix-healhcheck-goroutine-leak 2017-06-26 15:34:43 -07:00
health_test.go Move checkpointing to the Container object 2017-06-23 07:52:32 -07:00
image.go LCOW: Move daemon stores to per platform 2017-06-20 19:49:52 -07:00
image_delete.go LCOW: Move daemon stores to per platform 2017-06-20 19:49:52 -07:00
image_exporter.go LCOW: Fix nits from 33241 2017-06-27 11:59:49 -07:00
image_history.go LCOW: Move daemon stores to per platform 2017-06-20 19:49:52 -07:00
image_inspect.go Set a LastUpdated time in image metadata when an image tag is updated. 2017-06-26 12:16:26 -07:00
image_pull.go LCOW: pull goes to correct stores 2017-06-20 19:49:52 -07:00
image_push.go LCOW: Fix nits from 33241 2017-06-27 11:59:49 -07:00
image_tag.go Set a LastUpdated time in image metadata when an image tag is updated. 2017-06-26 12:16:26 -07:00
images.go LCOW: Fix nits from 33241 2017-06-27 11:59:49 -07:00
import.go LCOW: Plumb through platform on Import 2017-06-20 19:49:54 -07:00
info.go LCOW: Fix nits from 33241 2017-06-27 11:59:49 -07:00
info_unix.go Fix missing "--version" argument 2017-06-11 23:31:47 +02:00
info_unix_test.go Refactor "init" version parsing, and add unit-test 2017-04-08 11:28:37 +02:00
info_windows.go api: types: keep info.SecurityOptions a string slice 2016-11-19 13:21:16 +01:00
inspect.go Move platform specific mount data to Container 2017-06-23 07:22:47 -07:00
inspect_solaris.go Move platform specific mount data to Container 2017-06-23 07:22:47 -07:00
inspect_unix.go Move platform specific mount data to Container 2017-06-23 07:22:47 -07:00
inspect_windows.go Move platform specific mount data to Container 2017-06-23 07:22:47 -07:00
keys.go Change root_maxkeys 2016-06-27 10:23:37 -07:00
keys_unsupported.go change minor mistake of spelling 2016-12-20 21:05:19 +08:00
kill.go Allow stopping of paused container 2017-07-12 10:35:48 -04:00
links.go Windows: Factor out sqlite 2016-12-01 09:38:08 -08:00
list.go daemon: Ignore nonexistent containers when listing containers 2017-06-30 15:19:47 -07:00
list_unix.go stop grabbing container locks during ps 2017-06-23 07:52:31 -07:00
list_windows.go stop grabbing container locks during ps 2017-06-23 07:52:31 -07:00
logdrivers_linux.go added logentries driver 2016-10-06 22:48:53 -03:00
logdrivers_windows.go Windows: Enable fluentd logdriver 2016-11-08 19:54:57 -08:00
logs.go Prevent ContainerLogs from hanging if container doesn't run for long 2017-04-20 12:27:51 +01:00
logs_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
metrics.go Add support for metrics plugins 2017-05-12 00:30:09 -04:00
metrics_unix.go Add support for metrics plugins 2017-05-12 00:30:09 -04:00
metrics_unsupported.go Add support for metrics plugins 2017-05-12 00:30:09 -04:00
monitor.go ensure heath monitor status updates are propagated 2017-06-23 07:52:34 -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 Move stdio attach from libcontainerd backend to callback 2016-10-24 00:20:36 -07:00
mounts.go Fix issue backporting mount spec to pre-1.13 obj 2017-05-11 12:31:53 -04:00
names.go no need to save state to disk here 2017-06-23 07:52:32 -07:00
network.go Integrate local datascope network with swarm 2017-05-17 15:50:28 -07:00
oci_linux.go Remove error return from RootPair 2017-06-07 11:45:33 -04:00
oci_solaris.go Remove error return from RootPair 2017-06-07 11:45:33 -04:00
oci_windows.go Spelling fixes 2017-07-03 13:13:09 -07:00
pause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
prune.go LCOW: Fix nits from 33241 2017-06-27 11:59:49 -07:00
reload.go Spelling fixes 2017-07-03 13:13:09 -07:00
reload_test.go Add daemon option to push foreign layers 2017-05-16 14:36:36 -07:00
rename.go Fix run docker rename <container-id> new_name concurrently, the container will have multi names 2017-07-05 16:56:31 +08:00
resize.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
restart.go save deep copies of Container in the replica store 2017-06-23 07:52:33 -07:00
search.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
search_test.go Remove redundant format 2016-12-27 21:46:52 +08:00
seccomp_disabled.go Replace old oci specs import with runtime-specs 2016-08-17 09:38:34 -07:00
seccomp_linux.go Update moby to runc and oci 1.0 runtime final rc 2017-05-05 13:45:45 -07:00
seccomp_unsupported.go Fix seccomp output in docker info 2016-07-08 17:26:42 -07:00
secrets.go Add config support to executor backend 2017-05-11 10:08:21 -07:00
secrets_linux.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
secrets_unsupported.go Add Windows secrets support 2017-05-16 11:30:06 -07:00
secrets_windows.go Add Windows secrets support 2017-05-16 11:30:06 -07:00
selinux_linux.go Switch to using opencontainers/selinux for selinux bindings 2017-04-24 21:29:47 +02:00
selinux_unsupported.go Rename daemon/utils_*.go to selinux 2015-11-12 15:48:41 -08:00
start.go delete unused code (daemon.Start) 2017-06-23 07:52:34 -07:00
start_unix.go save deep copies of Container in the replica store 2017-06-23 07:52:33 -07:00
start_windows.go Include Endpoint List for Shared Endpoints 2017-07-06 12:19:17 -07:00
stats.go Send "Name" and "ID" when stating stopped containers 2017-02-09 09:46:59 +08:00
stats_collector.go Extract daemon statsCollector to its own package 2017-01-04 18:18:30 +01:00
stats_unix.go Removed engine-api leftovers 2016-09-21 12:36:52 +02:00
stats_windows.go Windows: stats support 2016-09-16 11:56:15 -07:00
stop.go Update ContainerWait API 2017-05-16 15:11:39 -07:00
top_unix.go Fixing issue of docker top command failure when dealing with -m option 2017-03-10 02:50:21 +00:00
top_unix_test.go Fixing issue of docker top command failure when dealing with -m option 2017-03-10 02:50:21 +00:00
top_windows.go Convert ContainerTopOKResponse from swagger spec. 2017-01-03 11:47:47 -05:00
unpause.go remove running judgement when unpause container 2016-08-29 10:16:18 +08:00
update.go save deep copies of Container in the replica store 2017-06-23 07:52:33 -07:00
update_linux.go Add --cpus support for docker update 2017-04-06 15:40:12 -07:00
update_solaris.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
update_windows.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
volumes.go Merge pull request #33257 from mtesselH/master 2017-05-29 10:48:07 +01:00
volumes_unit_test.go reorder imports with goimports 2015-12-16 16:50:25 +01:00
volumes_unix.go avoid saving container state to disk before daemon.Register 2017-06-23 07:52:34 -07:00
volumes_unix_test.go Spelling fixes 2017-07-03 13:13:09 -07:00
volumes_windows.go Partial refactor of UID/GID usage to use a unified struct. 2017-06-07 11:44:33 -04:00
wait.go Update ContainerWait API 2017-05-16 15:11:39 -07:00
workdir.go Remove error return from RootPair 2017-06-07 11:45:33 -04:00