diff --git a/runme.sh b/runme.sh
index 1e5217c00ba2a230e0b8ea36898812c2ffc5f84e..2cd8bfdac7ba7a56908755c1495dea7ed9b22ce3 100755
--- a/runme.sh
+++ b/runme.sh
@@ -17,12 +17,13 @@ IMAGE="docker.io/eclipsefdn/www.eclipse.org:latest"
 #podman should be a drop in replacement for docker
 PODMAN="/usr/bin/podman"
 CONTAINER_NAME="www-httpd"
-RUNNING_IMAGE=""
+IMAGE_TRACKER="/var/run/eclipse.org-image"
 LATEST_IMAGE=""
 
 function pull_image {
 #  echo "Fetching $IMAGE"
-  $PODMAN pull -q $IMAGE
+  # -q doesn't seem to supress all output, so let's trap it in a local var
+  local RETURN=$($PODMAN pull -q $IMAGE)
 }
 
 function get_image_id {
@@ -31,34 +32,30 @@ function get_image_id {
 }
 
 function run_image {
-#  echo "Running Image $LATEST_IMAGE"
+  echo "Running Image $LATEST_IMAGE"
   $PODMAN run --name=$CONTAINER_NAME -d -p 18181:8080 $LATEST_IMAGE
 }
 
 #main loop starts here.
+if [ -f ${IMAGE_TRACKER} ] && [ -s ${IMAGE_TRACKER} ] ; then
+  RUNNING_IMAGE=$(cat $IMAGE_TRACKER)
+else
+  RUNNING_IMAGE=""
+fi
 
+#pull and get the image id
 pull_image
+
 LATEST_IMAGE=$(get_image_id)
 if [[ $RUNNING_IMAGE == "" ]]; then
-#  echo "Init setting RUNNING_IMAGE=LATEST_IMAGE"
-  RUNNING_IMAGE=$LATEST_IMAGE
+  echo "Init setting RUNNING_IMAGE=LATEST_IMAGE"
+  run_image
+  echo -n $LATEST_IMAGE > $IMAGE_TRACKER
+elif [[ $RUNNING_IMAGE != $LATEST_IMAGE ]]; then
+  echo "Latest image id is not the running image, restarting"
+  $PODMAN stop $CONTAINER_NAME
+  $PODMAN rm $CONTAINER_NAME
+  run_image
+  #update the image 'version' tracker file
+  echo -n $LATEST_IMAGE > $IMAGE_TRACKER
 fi
-
-run_image
-
-while :
-do
-  sleep 300;
-  #pull and get the image id
-  pull_image
-  LATEST_IMAGE=$(get_image_id)
-  if [[ $RUNNING_IMAGE != $LATEST_IMAGE ]]; then
-    echo "Latest image id is not the running image, restarting"
-    $PODMAN stop $CONTAINER_NAME
-    $PODMAN rm $CONTAINER_NAME
-    run_image
-    RUNNING_IMAGE=$LATEST_IMAGE
-  fi
-
-done
-