Я уверен, что об этом спрашивали миллион раз, но по какой-то причине я просто не могу найти ничего в Интернете.
У меня есть две сети, которые я создал с помощью Podman (аналогично Docker).
Когда я делаю localhost: 9998, он просто истекает.
Так что он просто не может подключиться.
Есть ли способ создать сетевой мост, чтобы я мог скручивать свой контейнер в определенной контейнерной сети?
ОБНОВИТЬ
[
{
"cniVersion": "0.4.0",
"name": "search",
"plugins": [
{
"bridge": "cni-podman0",
"ipMasq": true,
"ipam": {
"ranges": [
[
{
"gateway": "10.89.0.1",
"subnet": "10.89.0.0/24"
}
]
],
"routes": [
{
"dst": "0.0.0.0/0"
}
],
"type": "host-local"
},
"isGateway": true,
"type": "bridge"
},
{
"capabilities": {
"portMappings": true
},
"type": "portmap"
},
{
"backend": "iptables",
"type": "firewall"
}
]
}
]
Из того, что я читал, мне нужно было получить IP-адрес шлюза от podman network inspect search
Было: 10.89.0.1
Когда я CURL этот IP-адрес, он все еще не работал.
Но потом я нашел это в IPtables:
Chain INPUT (policy DROP)
...
Chain FORWARD (policy ACCEPT)
target prot opt source destination
CNI-FORWARD all -- anywhere anywhere /* CNI firewall plugin rules */
Chain OUTPUT (policy ACCEPT)
...
Chain CNI-FORWARD (1 references)
target prot opt source destination
...
ACCEPT all -- anywhere 10.89.0.20 ctstate RELATED,ESTABLISHED
ACCEPT all -- 10.89.0.20 anywhere
ACCEPT all -- anywhere 10.89.1.2 ctstate RELATED,ESTABLISHED
ACCEPT all -- 10.89.1.2 anywhere
...
IP-адреса 10.89.0.20 и 10.89.1.2 - это IP-адреса моего хоста для доступа к каждой из сетей podman.
Ты можешь использовать podman inspect <container-name>
чтобы получить IP-адрес контейнера.
Эта команда возвращает только IP-адрес:
podman inspect <container-name> --format '{{.NetworkSettings.IPAddress}}'