diff --git a/docs/get-releases-json.py b/docs/get-releases-json.py
old mode 100644
new mode 100755
index 6cd0f472b31f458ae61099aa27c8a1ace267834e..72823da7339c11035ea6b3ded92633edf5fdbc59
--- a/docs/get-releases-json.py
+++ b/docs/get-releases-json.py
@@ -1,3 +1,5 @@
+#!/usr/bin/env python3
+
 import json
 import subprocess
 
diff --git a/scripts/is-docker-latest.py b/scripts/is-docker-latest.py
new file mode 100755
index 0000000000000000000000000000000000000000..2e3854989104e80fb1069b165f4f6c7f270bb6c9
--- /dev/null
+++ b/scripts/is-docker-latest.py
@@ -0,0 +1,40 @@
+#!/usr/bin/env python3
+import argparse
+import json
+import sys
+from distutils.version import StrictVersion
+
+
+def main(current, releases_json):
+    try:
+        version = StrictVersion(current)
+    except ValueError:
+        print("Version number '{}' isn't valid".format(current))
+        sys.exit(1)
+
+    releases = json.loads(releases_json)
+    latest_release = releases["releases"][0]["id"]
+
+    if version != latest_release:
+        print(
+            "Version number '{}' doesn't match latest release {}".format(
+                current, latest_release
+            )
+        )
+        sys.exit(1)
+    print("Version number '{}' is latest release!".format(current))
+
+
+if __name__ == "__main__":
+    parser = argparse.ArgumentParser(
+        description="""
+        Exit with code 0 if the given version matches the latest one
+        fron the list of releases found in releases_json. Primary use
+        is to check whether the current version can be safely pushed
+        as the latest one on the docker Hub.
+    """
+    )
+    parser.add_argument("current", help="Current version")
+    parser.add_argument("releases_json", type=argparse.FileType("r"))
+    args = parser.parse_args()
+    main(args.current, args.releases_json.read())