După ore și ore am reușit să rezolv problema
MTU-ul rețelei de punte a docker-ului trebuie să se potrivească cu MTU-ul adaptorului de rețea al gazdei
În cazul meu, MTU pentru eth0 (gazdă) a fost setat la 1450, în timp ce MTU pentru docker0 a fost setat la 1500
Puteți schimba MTU-ul prin oricare
În cazul în care nu aveți un /etc/docker/daemon.json
creează doar unul:
# /etc/docker/daemon.json
# ajustați MTU-ul corespunzător adaptorului de rețea al gazdei
{
„mtu”:1450
}
Nu uitați să reporniți docker.service: systemctl reporniți docker.service
Mai multe detalii:
Dacă nu doriți să verificați setările, utilizați ip
și comparați valoarea mtu
$ ip a
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> **mtu 1450** qdisc fq_codel state UP group default qlen 1000
...
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> **mtu 1500** qdisc noqueue state DOWN grup implicit
...
Rețineți că docker0 indică întotdeauna 1500 și își schimbă valoarea numai dacă un container este conectat la acea rețea
$ ip a
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc fq_codel state UP group default qlen 1000
...
3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP grup implicit
...
17: vethe4b452f@if16: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master docker0 stare UP grup implicit
...
Rețea personalizată
De asemenea, am încercat să creez o rețea personalizată cu o rețea definită MTU
în loc de a seta MTU
prin intermediul /etc/docker/daemon.json
. Acest lucru nu a funcționat și nu știu de ce
docker network create --opt com.docker.network.mtu=1450 CustomMTU