Podman : Podman Network2025/10/31 |
|
Podman コンテナーのネットワーク管理の基本操作です。 |
|
| [1] | コンテナー起動時にネットワークを指定しない場合は、デフォルトの [podman] ネットワークが使用されます。 |
|
# ネットワーク一覧表示 dlp:~ # podman network ls NETWORK ID NAME DRIVER 2f259bab93aa podman bridge # [podman] ネットワークの詳細表示 dlp:~ # podman network inspect podman
[
{
"name": "podman",
"id": "2f259bab93aaaaa2542ba43ef33eb990d0999ee1b9924b557b7be53c0b7a1bb9",
"driver": "bridge",
"network_interface": "podman0",
"created": "2025-10-31T11:17:54.709161968+09:00",
"subnets": [
{
"subnet": "10.88.0.0/16",
"gateway": "10.88.0.1"
}
],
"ipv6_enabled": false,
"internal": false,
"dns_enabled": false,
"ipam_options": {
"driver": "host-local"
},
"containers": {}
}
]
# コンテナーのネットワークはデフォルトでは [podman] が使用される dlp:~ # podman run opensuse/leap /bin/bash -c "zypper -n install iproute2; /usr/sbin/ip route" ..... ..... default via 10.88.0.1 dev eth0 proto static metric 100 10.88.0.0/16 dev eth0 proto kernel scope link src 10.88.0.16dlp:~ # podman commit $(podman ps -a | tail -1 | awk '{print $1}') srv.world/iproute
|
| [2] | デフォルトの [10.88.0.0/16] 以外のサブネットでコンテナーを起動したい場合は、以下のように実行します。 |
|
# [network01] ネットワークを [192.168.100.0/24] のサブネットで作成 dlp:~ # podman network create --subnet 192.168.100.0/24 network01 /etc/cni/net.d/network01.conflist podman network ls NETWORK ID NAME DRIVER 93ffa434566d network01 bridge 2f259bab93aa podman bridge # [network01] ネットワークを指定してコンテナーを起動 dlp:~ # podman run --network network01 srv.world/iproute /usr/sbin/ip route default via 192.168.100.1 dev eth0 proto static metric 100 192.168.100.0/24 dev eth0 proto kernel scope link src 192.168.100.2 # 起動済みのコンテナーに作成したネットワークを接続する場合は以下 dlp:~ # podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7848c9165120 srv.world/suse-nginx:latest /usr/sbin/nginx -... 5 seconds ago Up 6 seconds 0.0.0.0:80->80/tcp vigorous_boumandlp:~ # podman exec 7848c9165120 ip route default via 10.88.0.1 dev eth0 proto static metric 100 10.88.0.0/16 dev eth0 proto kernel scope link src 10.88.0.17 # サブネット内の任意の IP アドレスを指定してコンテナーに割り当て dlp:~ # podman network connect network01 7848c9165120
podman exec 7848c9165120 ip route default via 192.168.100.1 dev eth1 proto static metric 100 default via 10.88.0.1 dev eth0 proto static metric 100 10.88.0.0/16 dev eth0 proto kernel scope link src 10.88.0.17 192.168.100.0/24 dev eth1 proto kernel scope link src 192.168.100.3 # 接続したネットワークを切断する場合は以下 dlp:~ # podman network disconnect network01 7848c9165120 dlp:~ # podman exec 7848c9165120 ip route default via 10.88.0.1 dev eth0 proto static metric 100 10.88.0.0/16 dev eth0 proto kernel scope link src 10.88.0.17 |
| [3] | 作成したネットワークを削除する場合は以下のように実行します。 |
|
dlp:~ # podman network ls NETWORK ID NAME DRIVER 93ffa434566d network01 bridge 2f259bab93aa podman bridge # [network01] を削除 dlp:~ # podman network rm network01 Error: "network01" has associated containers with it. Use -f to forcibly delete containers and pods: network is being used # 上記のようにコンテナーや Pod と関連付いているネットワークは削除不可 # 強制削除する場合は以下のように [-f] オプションを付加 dlp:~ # podman network rm -f network01 network01 |
| Sponsored Link |
|
|