diff --git a/beat/web/backend/models.py b/beat/web/backend/models.py
index d7a62713d32b7890ead7dfb99107b06ef66ca7ef..2ac9cf1f35dace761ae57b1426f558f4ddfc6562 100755
--- a/beat/web/backend/models.py
+++ b/beat/web/backend/models.py
@@ -1365,7 +1365,7 @@ class JobSplit(models.Model):
         self.end(result)
 
 
-    def process(self, cache=settings.CACHE_ROOT):
+    def process(self, cache=settings.CACHE_ROOT, docker_images_cache=None):
         '''Process assigned job splits using beat.core
 
         This task executes the user algorithm on a subprocess. It also serves
@@ -1419,7 +1419,7 @@ class JobSplit(models.Model):
         try:
 
             if JobSplit.host is None:
-                JobSplit.host = Host()
+                JobSplit.host = Host(images_cache=docker_images_cache)
                 JobSplit.host.setup(raise_on_errors=not(getattr(settings, 'TEST_CONFIGURATION', False)))
 
             self.executor = beat.core.execution.Executor(settings.PREFIX, config,
diff --git a/beat/web/scripts/process.py b/beat/web/scripts/process.py
old mode 100644
new mode 100755
index 8c44eba51343210169f9120c8d67b49a25f1fdf9..326a12b16267569ac8dd042087a66487c40ef60e
--- a/beat/web/scripts/process.py
+++ b/beat/web/scripts/process.py
@@ -115,4 +115,4 @@ def main(user_input=None):
     signal.signal(signal.SIGTERM, handler)
     signal.signal(signal.SIGINT, handler)
 
-    split.process()
+    split.process(docker_images_cache='/tmp/beat_docker_images.json')