code: def check_docker_version(quiet: bool = False):
      """
      Checks if the docker compose version is as expected. including some specific modifications done by
      some vendors such as Microsoft. They might have modified version of docker-compose/docker in their
      cloud. In case docker compose version is wrong we continue but print warning for the user.
  
      """
      permission_denied = check_docker_permission_denied()
      if not permission_denied:
          docker_version_command = [
              "docker",
              "version",
              "--format",
              "{{.Client.Version}}",
          ]
          docker_version = ""
          docker_version_result = run_command(
              docker_version_command,
              no_output_dump_on_exception=True,
              capture_output=True,
              text=True,
              check=False,
              dry_run_override=False,
          )
          if docker_version_result.returncode == 0:
              docker_version = docker_version_result.stdout.strip()
          if docker_version == "":
              get_console().print(
                  f"""
  [warning]Your version of docker is unknown. If the scripts fail, please make sure to[/]
  [warning]install docker at least: {MIN_DOCKER_VERSION} version.[/]
  """
              )
              sys.exit(1)
          else:
              good_version = compare_version(
                  docker_version, MIN_DOCKER_VERSION
              )
              if good_version:
                  if not quiet:
                      get_console().print(
                          f"[success]Good version of Docker: {docker_version}.[/]"
                      )
              else:
                  get_console().print(
                      f"""
  [error]Your version of docker is too old: {docker_version}.\n[/]
  [warning]Please upgrade to at least {MIN_DOCKER_VERSION}.\n[/]
  You can find installation instructions here: https://docs.docker.com/engine/install/
  """
                  )
                  sys.exit(1)
  
imports: from __future__ import annotations
  import copy
  import json
  import os
  import re
  import sys
  from subprocess import DEVNULL, CalledProcessError, CompletedProcess
  from typing import TYPE_CHECKING
  from airflow_breeze.params.build_prod_params import BuildProdParams
  from airflow_breeze.utils.cache import read_from_cache_file
  from airflow_breeze.utils.host_info_utils import get_host_group_id, get_host_os, get_host_user_id
  from airflow_breeze.utils.path_utils import AIRFLOW_SOURCES_ROOT, SCRIPTS_DOCKER_DIR, cleanup_python_generated_files, create_mypy_volume_if_needed
  from airflow_breeze.utils.shared_options import get_verbose
  from airflow_breeze.utils.visuals import ASCIIART, ASCIIART_STYLE, CHEATSHEET, CHEATSHEET_STYLE
  from airflow_breeze.global_constants import ALLOWED_CELERY_BROKERS, ALLOWED_DEBIAN_VERSIONS, DEFAULT_PYTHON_MAJOR_MINOR_VERSION, DOCKER_DEFAULT_PLATFORM, MIN_DOCKER_COMPOSE_VERSION, MIN_DOCKER_VERSION, SEQUENTIAL_EXECUTOR
  from airflow_breeze.utils.console import Output, get_console
  from airflow_breeze.utils.run_utils import RunCommandResult, check_if_buildx_plugin_installed, run_command
label_desc: Use image node_id 5 for calling a global function with example usage: check_docker_version(quiet) without return types