def METHOD_NAME(self):
    local_cmd_path = f'/tmp/{self.docker_name}'
    os.makedirs(local_cmd_path, exist_ok=True)
    cmd = [
        'docker',
        'run',
        '--rm',
        '--name',
        self.docker_name,
        '-d',
        '--sysctl',
        'net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1',
        '--privileged',
        '-v',
        f'{self._rcp_device}:/dev/ttyUSB0',
        '-v',
        f'{self.ot_path.rstrip("/")}:/home/pi/repo/openthread',
        self.docker_image,
    ]
    self.logger.info('Launching docker:  %s', ' '.join(cmd))
    launch_proc = subprocess.Popen(cmd,
                                   stdin=subprocess.DEVNULL,
                                   stdout=subprocess.DEVNULL,
                                   stderr=subprocess.DEVNULL)
    launch_docker_deadline = time.time() + 60
    launch_ok = False
    time.sleep(5)
    while time.time() < launch_docker_deadline:
        try:
            subprocess.check_call(['docker', 'exec', self.docker_name, 'ot-ctl', 'state'],
                                  stdin=subprocess.DEVNULL,
                                  stdout=subprocess.DEVNULL,
                                  stderr=subprocess.DEVNULL)
            launch_ok = True
            logging.info("OTBR Docker %s is ready!", self.docker_name)
            break
        except subprocess.CalledProcessError:
            time.sleep(5)
            continue
    if not launch_ok:
        raise RuntimeError('Cannot start OTBR Docker %s!' % self.docker_name)
    launch_proc.wait()