def _nodes(self, container_base_name: str) -> Set[Node]:
"""
Args:
container_base_name: The start of the container names.
Returns: ``Node``s corresponding to containers with names starting
with ``container_base_name``.
"""
client = docker.from_env(version='auto')
filters = {'name': container_base_name}
containers = client.containers.list(filters=filters)
return set(
Node(
ip_address=IPv4Address(
container.attrs['NetworkSettings']['IPAddress']
),
ssh_key_path=self._path / 'include' / 'ssh' / 'id_rsa',
) for container in containers
)
评论列表
文章目录