networks_manager¶
用于网络资源的 PodmanResource 管理器子类。
通过 Podman API 服务操作网络资源的类和方法。
示例
- with PodmanClient(base_url=”unix:///run/user/1000/podman/podman.sock”) as client
- for net in client.networks.list()
print(net.id, “
“)
- class NetworksManager(client: APIClient = None)[source]¶
基类:
Manager
网络资源的专用管理器。
初始化 Manager() 对象。
- 参数:
client – 配置为连接到 Podman 服务的 APIClient()。
- create(name: str, **kwargs) Network [source]¶
创建网络资源。
- 参数:
name – 要创建的网络名称
- 关键字参数:
attachable (bool) – 被忽略,始终为 False。
check_duplicate (bool) – 被忽略,始终为 False。
dns_enabled (bool) – 为 True 时,不为该网络提供 DNS。
driver (str) – 创建网络时要使用的网络驱动程序。
enable_ipv6 (bool) – 在网络上启用 IPv6。
ingress (bool) – 被忽略,始终为 False。
internal (bool) – 限制对网络的外部访问。
ipam (IPAMConfig) – 网络的可选自定义 IP 方案。
labels (Dict[str, str]) – 要在网络上设置的标签映射。
options (Dict[str, Any]) – 驱动程序选项。
scope (str) – 被忽略,始终为 “local”。
- 引发:
APIError – 当 Podman 服务报告错误时
- get(key: str) Network [source]¶
返回网络 ID 的信息。
- 参数:
key – 网络名称或 ID。
- 引发:
NotFound – 当网络不存在时
APIError – 当服务返回错误时
- list(**kwargs) List[Network] [source]¶
报告网络。
- 关键字参数:
names (List[str]) – 要过滤的名称列表。
ids (List[str]) – 要过滤的标识符列表。
filters (Mapping[str,str]) –
列出网络的条件 可用过滤器
driver=”bridge”: 匹配网络的驱动程序。仅支持 “bridge”。
label=(Union[str, List[str]]): 格式为 “key”、”key=value” 或此类列表。
type=(str): 按类型过滤网络,合法值为
”custom”
”builtin”
plugin=(List[str]]): 匹配网络中包含的 CNI 插件,合法值为(仅限 Podman)
bridge
portmap
firewall
tuning
dnsname
macvlan
greedy (bool) – 为每个网络分别获取更多详细信息。您可能希望通过此方法获取附加到它们的容器。被忽略。
- 引发:
APIError – 当服务返回错误时
- prepare_model(attrs: PodmanResource | Mapping[str, Any]) PodmanResourceType ¶
从一组属性创建模型。
- prune(filters: Dict[str, Any] | None = None) Dict[Literal['NetworksDeleted', 'SpaceReclaimed'], Any] [source]¶
删除未使用的网络。
SpaceReclaimed 始终报告为 0
- 参数:
filters – 选择要删除的卷的条件。被忽略。
- 引发:
APIError – 当服务报告错误时
- remove(name: [<class 'podman.domain.networks.Network'>, <class 'str'>], force: bool | None = None) None [source]¶
删除网络资源。
- 参数:
name – 要删除的网络的标识符。
force – 删除网络和任何关联的容器
- 引发:
APIError – 当 Podman 服务报告错误时
- property resource¶
prepare_model() 将创建 Network 类。
- 类型:
Type[Network]