From 51c7af8fb4f73b4305f88ac45807f1124b566dd0 Mon Sep 17 00:00:00 2001 From: Bryan Boreham Date: Fri, 17 Nov 2017 13:31:46 +0000 Subject: [PATCH 1/2] Set IMAGE before using it --- weave | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/weave b/weave index aaaa4e34..4edd2eb5 100755 --- a/weave +++ b/weave @@ -16,6 +16,8 @@ DOCKERHUB_USER=${DOCKERHUB_USER:-weaveworks} BASE_EXEC_IMAGE=$DOCKERHUB_USER/weaveexec EXEC_IMAGE=$BASE_EXEC_IMAGE:$IMAGE_VERSION WEAVEDB_IMAGE=$DOCKERHUB_USER/weavedb +BASE_IMAGE=$DOCKERHUB_USER/weave +IMAGE=$BASE_IMAGE:$IMAGE_VERSION PROXY_HOST=${PROXY_HOST:-$(echo "${DOCKER_HOST#tcp://}" | cut -s -d: -f1)} PROXY_HOST=${PROXY_HOST:-127.0.0.1} DOCKER_CLIENT_HOST=${DOCKER_CLIENT_HOST:-$DOCKER_HOST} @@ -243,8 +245,6 @@ fi # Default restart policy for router/proxy RESTART_POLICY="--restart always" -BASE_IMAGE=$DOCKERHUB_USER/weave -IMAGE=$BASE_IMAGE:$IMAGE_VERSION CONTAINER_NAME=${WEAVE_CONTAINER_NAME:-weave} PLUGIN_NAME="$DOCKERHUB_USER/net-plugin" From 96cecf17965c5b55823d45e5558ac1cbb6f93980 Mon Sep 17 00:00:00 2001 From: Bryan Boreham Date: Fri, 17 Nov 2017 13:40:48 +0000 Subject: [PATCH 2/2] Pull images before running inside weaveexec container Now we don't bundle the docker command inside weaveexec, we need to do an explicit 'docker pull' to ensure the images are there. Also set the weavedb tag to :latest to remove a warning from docker --- weave | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/weave b/weave index 4edd2eb5..30f556c9 100755 --- a/weave +++ b/weave @@ -15,7 +15,7 @@ MIN_DOCKER_VERSION=1.10.0 DOCKERHUB_USER=${DOCKERHUB_USER:-weaveworks} BASE_EXEC_IMAGE=$DOCKERHUB_USER/weaveexec EXEC_IMAGE=$BASE_EXEC_IMAGE:$IMAGE_VERSION -WEAVEDB_IMAGE=$DOCKERHUB_USER/weavedb +WEAVEDB_IMAGE=$DOCKERHUB_USER/weavedb:latest BASE_IMAGE=$DOCKERHUB_USER/weave IMAGE=$BASE_IMAGE:$IMAGE_VERSION PROXY_HOST=${PROXY_HOST:-$(echo "${DOCKER_HOST#tcp://}" | cut -s -d: -f1)} @@ -219,6 +219,15 @@ case "$1" in fi fi ;; + launch) + # this is necessary because 'util_op run-container' doesn't do + # an implied pull like 'docker run' does + if [ -z "$IS_LOCAL" ] ; then + for img in $IMAGE $WEAVEDB_IMAGE ; do + docker inspect -f "_" $img >/dev/null 2>&1 || docker pull $img + done + fi + ;; setup) # call 'docker pull' outside weaveexec so we don't need a # docker binary inside