def _get_docker_compose_command(self) -> Tuple[List[str], str]:
        """Determine which Docker Compose command to use.

        Returns:
            A tuple containing the command as a list and the version string
        """
        # Try docker compose (v2) first
        try:
            result = subprocess.run(
                ["docker", "compose", "version"], check=True, capture_output=True, text=True
            )
            version = result.stdout.strip()
            return ["docker", "compose"], version
        except (subprocess.CalledProcessError, FileNotFoundError):
            # Try docker-compose (v1) next
            try:
                result = subprocess.run(
                    ["docker-compose", "--version"], check=True, capture_output=True, text=True
                )
                version = result.stdout.strip()
                return ["docker-compose"], version
            except (subprocess.CalledProcessError, FileNotFoundError) as e:
                raise RuntimeError(f"Docker Compose not available: {e}") from e
Determine which Docker Compose command to use.

        Returns:
            A tuple containing the command as a list and the version string
        
backend/tests/helpers/docker.py