def METHOD_NAME(docker_client: docker.client.DockerClient, name: str, container: dict):
    image = container['image']
    args = container.get('args', '')
    privileged = container.get('privileged', False)
    mounts = container.get('mounts', [])
    environment = container.get('env', {})
    user = container.get('user', '')
    pid_mode = container.get('pid_mode', '')
    network_mode = container.get('network_mode', '')
    additional_wait = container.get('init_wait', 0)
    post_validation = container.get('post_validation', None)
    stop_signal = container.get('signal', None)
    handle = docker_client.containers.run(
        image,
        args,
        name=name,
        detach=True,
        privileged=privileged,
        mounts=mounts,
        environment=environment,
        user=user,
        pid_mode=pid_mode,
        network_mode=network_mode,
    )
    post = {
        'validation': post_validation,
        'signal': stop_signal
    }
    try:
        wait_container_running(handle, additional_wait)
    except TimeoutError:
        print(f'{name} failed to start, the test will fail')
    return (handle, post)