diff --git a/odoo_scripts/do_tests.py b/odoo_scripts/do_tests.py
index 9de0f87075a693b76b55f8cbcb3cc56499dc8760_b2Rvb19zY3JpcHRzL2RvX3Rlc3RzLnB5..a467c19eedbf8ce0bbaeee53be4e5f0888b42160_b2Rvb19zY3JpcHRzL2RvX3Rlc3RzLnB5 100755
--- a/odoo_scripts/do_tests.py
+++ b/odoo_scripts/do_tests.py
@@ -246,7 +246,7 @@
             args.append(dbport)
 
     apply_flake8(nmspc, odoo_type)
-    apply_isort(nmspc)
+    apply_isort(nmspc, odoo_type)
     if nmspc.log_handler:
         for lh in nmspc.log_handler:
             args.append("--log-handler")
diff --git a/odoo_scripts/docker_dev_start.py b/odoo_scripts/docker_dev_start.py
index 9de0f87075a693b76b55f8cbcb3cc56499dc8760_b2Rvb19zY3JpcHRzL2RvY2tlcl9kZXZfc3RhcnQucHk=..a467c19eedbf8ce0bbaeee53be4e5f0888b42160_b2Rvb19zY3JpcHRzL2RvY2tlcl9kZXZfc3RhcnQucHk= 100755
--- a/odoo_scripts/docker_dev_start.py
+++ b/odoo_scripts/docker_dev_start.py
@@ -793,7 +793,7 @@
         arg.append(",".join(all_addons_dir))
 
     apply_flake8(nmspc, odoo_type)
-    apply_isort(nmspc)
+    apply_isort(nmspc, odoo_type)
 
     # developer mode options
     if dev:
diff --git a/odoo_scripts/docker_flake8.py b/odoo_scripts/docker_flake8.py
index 9de0f87075a693b76b55f8cbcb3cc56499dc8760_b2Rvb19zY3JpcHRzL2RvY2tlcl9mbGFrZTgucHk=..a467c19eedbf8ce0bbaeee53be4e5f0888b42160_b2Rvb19zY3JpcHRzL2RvY2tlcl9mbGFrZTgucHk= 100644
--- a/odoo_scripts/docker_flake8.py
+++ b/odoo_scripts/docker_flake8.py
@@ -12,5 +12,5 @@
 from .docker_client import DockerClient
 from .parsing import apply, basic_parser
 
-__version__ = "1.0.0"
+__version__ = "1.1.0"
 __date__ = "2020-09-10"
@@ -16,5 +16,5 @@
 __date__ = "2020-09-10"
-__updated__ = "2020-09-10"
+__updated__ = "2022-01-25"
 
 _logger = logging.getLogger(__name__)
 
@@ -48,7 +48,7 @@
 
 def parser_add_flake8_group(parser: argparse.ArgumentParser):
     """Add flake8 option (--flake8/--no-flake8) to the given parser.
-    Defaults to not using flake8."""
+    Defaults to not running flake8."""
     flake8_group = parser.add_mutually_exclusive_group()
     flake8_group.add_argument(
         "--flake8",
@@ -82,6 +82,6 @@
     return flake8(odoo_type)
 
 
-def flake8(odoo_type: str):
+def flake8(odoo_type: str, pull: bool = True):
     """Run flake8"""
     client = DockerClient.client
@@ -86,4 +86,6 @@
     """Run flake8"""
     client = DockerClient.client
-    repository = "xcgd/flake8"
+
+    # determine image to use based on odoo version
+    repository = "quay.orus.io/odoo/odoo"
     if odoo_type in ("odoo7", "odoo8", "odoo9", "odoo10"):
@@ -89,2 +91,3 @@
     if odoo_type in ("odoo7", "odoo8", "odoo9", "odoo10"):
+        repository = "xcgd/flake8"
         tag = "2"
@@ -90,3 +93,4 @@
         tag = "2"
-        _logger.info("Running flake8 for Python 2")
+    elif odoo_type == "odoo15":
+        tag = "15.0"
     else:
@@ -92,2 +96,3 @@
     else:
+        repository = "xcgd/flake8"
         tag = "3"
@@ -93,7 +98,11 @@
         tag = "3"
-        _logger.info("Running flake8 for Python 3")
-    client.images.pull(repository, tag)
-    image = "{}:{}".format(repository, tag)
+    image = f"{repository}:{tag}"
+
+    if pull:
+        _logger.info("Pulling flake8 (%s)", image)
+        client.images.pull(repository, tag)
+
+    _logger.info("Running flake8 (%s)", image)
     container = None
 
     # XXX When pressing ctrl-c during the container creating, the container
@@ -117,6 +126,7 @@
     # of being None
     container = client.containers.create(
         image,
+        entrypoint="flake8",
         command=["."],
         volumes={os.environ["PWD"]: {"bind": "/mnt", "mode": "ro"}},
         working_dir="/mnt",
diff --git a/odoo_scripts/docker_isort.py b/odoo_scripts/docker_isort.py
index 9de0f87075a693b76b55f8cbcb3cc56499dc8760_b2Rvb19zY3JpcHRzL2RvY2tlcl9pc29ydC5weQ==..a467c19eedbf8ce0bbaeee53be4e5f0888b42160_b2Rvb19zY3JpcHRzL2RvY2tlcl9pc29ydC5weQ== 100644
--- a/odoo_scripts/docker_isort.py
+++ b/odoo_scripts/docker_isort.py
@@ -10,6 +10,7 @@
 
 import docker
 
+from .config import Config
 from .docker_client import DockerClient
 from .parsing import apply, basic_parser
 
@@ -13,5 +14,5 @@
 from .docker_client import DockerClient
 from .parsing import apply, basic_parser
 
-__version__ = "1.0.1"
+__version__ = "1.1.0"
 __date__ = "2020-09-10"
@@ -17,5 +18,5 @@
 __date__ = "2020-09-10"
-__updated__ = "2021-10-21"
+__updated__ = "2022-01-25"
 
 _logger = logging.getLogger(__name__)
 
@@ -67,6 +68,6 @@
     )
 
 
-def apply_isort(namespace: argparse.Namespace):
+def apply_isort(namespace: argparse.Namespace, odoo_type: str):
     """Run isort if the option was set."""
     if namespace.isort:
@@ -71,6 +72,6 @@
     """Run isort if the option was set."""
     if namespace.isort:
-        isort()
+        isort(odoo_type)
 
 
 def main(argv=None):
@@ -78,7 +79,8 @@
     parser = __parser()
     nmspc = parser.parse_args(argv)
     apply(nmspc)
-    isort()
-    return 0
+    c = Config()
+    odoo_type = c.odoo_type
+    return isort(odoo_type)
 
 
@@ -83,5 +85,5 @@
 
 
-def isort(pull=True):
+def isort(odoo_type: str, pull: bool = True):
     """Run isort"""
     client = DockerClient.client
@@ -86,3 +88,18 @@
     """Run isort"""
     client = DockerClient.client
+
+    # determine image to use based on odoo version
+    repository = "quay.orus.io/odoo/odoo"
+    command = ["--check", "."]
+    if odoo_type == "odoo15":
+        tag = "15.0"
+    elif odoo_type == "odoo13":
+        tag = "13.0"
+        command = ["--check"]
+    else:
+        repository = "xcgd/isort"
+        tag = "odoo"
+        command = ["--check"]
+    image = f"{repository}:{tag}"
+
     if pull:
@@ -88,5 +105,5 @@
     if pull:
-        _logger.info("Pulling isort")
+        _logger.info("Pulling isort (%s)", image)
         # TODO find a better way to avoid error when pulling without a
         #  connection
         try:
@@ -90,8 +107,8 @@
         # TODO find a better way to avoid error when pulling without a
         #  connection
         try:
-            client.images.pull(repository="xcgd/isort", tag="odoo")
+            client.images.pull(repository=repository, tag=tag)
         except docker.errors.APIError:
             _logger.warning(
                 "No connection to server, using existing version, if any"
             )
@@ -94,8 +111,9 @@
         except docker.errors.APIError:
             _logger.warning(
                 "No connection to server, using existing version, if any"
             )
-    _logger.info("Running isort for Odoo")
+
+    _logger.info("Running isort for Odoo (%s)", image)
     container = None
 
     # XXX When pressing ctrl-c during the container creating, the container
@@ -118,8 +136,9 @@
     # split create and start so in case of SIGTERM, container has fewer chances
     # of being None
     container = client.containers.create(
-        "xcgd/isort:odoo",
-        command=["isort", "--check"],
+        image,
+        entrypoint="isort",
+        command=command,
         volumes={os.environ["PWD"]: {"bind": "/mnt", "mode": "ro"}},
         working_dir="/mnt",
         detach=True,