'List the deployed container images
:param image: Filter to containers with a certain image
:type  image: :class:`libcloud.container.base.ContainerImage`
:param cluster: Filter to containers in a cluster
:type  cluster: :class:`libcloud.container.base.ContainerCluster`
:rtype: ``list`` of :class:`libcloud.container.base.Container`'

def list_containers(self, image=None, cluster=None):

    request = {'cluster': 'default'}
    if (cluster is not None):
        request['cluster'] = cluster.id
    if (image is not None):
        request['family'] = image.name
    list_response = self.connection.request(ROOT, method='POST', data=json.dumps(request), headers=self._get_headers('ListTasks')).object
    if (len(list_response['taskArns']) == 0):
        return []
    containers = self.ex_list_containers_for_task(list_response['taskArns'])
    return containers
