Add option to disable docker containerizer killing orphans. Review: https://reviews.apache.org/r/29328
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/8f31db87 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/8f31db87 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/8f31db87 Branch: refs/heads/master Commit: 8f31db8794b7b2e20b9980b4e190ca62fc2e3481 Parents: 5acbfd2 Author: Timothy Chen <[email protected]> Authored: Mon Nov 24 17:17:07 2014 -0800 Committer: Timothy Chen <[email protected]> Committed: Fri May 22 23:13:50 2015 -0700 ---------------------------------------------------------------------- src/slave/containerizer/docker.cpp | 6 +++++- src/slave/flags.cpp | 5 +++++ src/slave/flags.hpp | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/8f31db87/src/slave/containerizer/docker.cpp ---------------------------------------------------------------------- diff --git a/src/slave/containerizer/docker.cpp b/src/slave/containerizer/docker.cpp index a37b45d..92f0e85 100644 --- a/src/slave/containerizer/docker.cpp +++ b/src/slave/containerizer/docker.cpp @@ -562,9 +562,13 @@ Future<Nothing> DockerContainerizerProcess::_recover( pids.put(containerId, pid); } } + + if (flags.docker_kill_orphans) { + return __recover(_containers); + } } - return __recover(_containers); + return Nothing(); } http://git-wip-us.apache.org/repos/asf/mesos/blob/8f31db87/src/slave/flags.cpp ---------------------------------------------------------------------- diff --git a/src/slave/flags.cpp b/src/slave/flags.cpp index b5e2518..c1b22e8 100644 --- a/src/slave/flags.cpp +++ b/src/slave/flags.cpp @@ -292,6 +292,11 @@ mesos::internal::slave::Flags::Flags() "(e.g., 3days, 2weeks, etc).\n", DOCKER_REMOVE_DELAY); + add(&Flags::docker_kill_orphans, + "docker_kill_orphans", + "Enable docker containerizer to kill orphaned containers", + true); + add(&Flags::default_container_info, "default_container_info", "JSON formatted ContainerInfo that will be included into\n" http://git-wip-us.apache.org/repos/asf/mesos/blob/8f31db87/src/slave/flags.hpp ---------------------------------------------------------------------- diff --git a/src/slave/flags.hpp b/src/slave/flags.hpp index 5c57478..3302b71 100644 --- a/src/slave/flags.hpp +++ b/src/slave/flags.hpp @@ -84,6 +84,7 @@ public: Duration docker_remove_delay; Option<ContainerInfo> default_container_info; Duration docker_stop_timeout; + bool docker_kill_orphans; #ifdef WITH_NETWORK_ISOLATOR uint16_t ephemeral_ports_per_container; Option<std::string> eth0_name;
