From 5a74e410b96aaeba909891069af4ad442e0ef0e5 Mon Sep 17 00:00:00 2001 From: endarova Date: Mon, 11 Nov 2019 14:45:28 +0200 Subject: [PATCH] start docker only if needed. Don't stop docker on win. --- core/utils/docker.py | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/core/utils/docker.py b/core/utils/docker.py index a31fa966..fed8c9f0 100644 --- a/core/utils/docker.py +++ b/core/utils/docker.py @@ -13,27 +13,24 @@ class Docker(object): def start(): if Settings.HOST_OS == OSType.WINDOWS: docker = os.environ.get("DOCKER_HOME") - if docker is not None: - cmd = '"' + os.path.join(docker, 'Docker Desktop.exe') + '"' - run(cmd=cmd, wait=False) - Log.info('Starting docker!') - else: - cmd = r'"C:\Program Files\Docker\Docker\Docker Desktop.exe"' + if not Process.is_running_by_name('Docker Desktop'): + if docker is not None: + cmd = '"' + os.path.join(docker, 'Docker Desktop.exe') + '"' + run(cmd=cmd, wait=False) + Log.info('Starting docker!') + else: + cmd = r'"C:\Program Files\Docker\Docker\Docker Desktop.exe"' + run(cmd=cmd, wait=False) + Log.info('Starting docker!') + elif OSUtils.is_catalina(): + if not Process.is_running_by_name('docker'): + cmd = 'open --background -a Docker' run(cmd=cmd, wait=False) Log.info('Starting docker!') - elif OSUtils.is_catalina(): - cmd = 'open --background -a Docker' - run(cmd=cmd, wait=False) - Log.info('Starting docker!') else: Log.info('No need to start docker!') @staticmethod def stop(): - if Settings.HOST_OS == OSType.WINDOWS: - Process.kill('Docker Desktop') - Process.kill('Docker.Watchguard') - Process.kill('com.docker.backend') - Process.kill('com.docker.proxy') if OSUtils.is_catalina(): Process.kill('Docker')