Docker container is not working

Около 80% проблем, связанных с тем что "мой Docker-контейнер не работает" - то есть, например, "не видит" соседние контейнеры, "не видит" Internet и пр. связаны с не настроенным или неправильно настроенным пробросом портов (forwarding) на хост-системе.

Иногда, также, "для надёжности" ;-) рекомендуют (пока) отключить поддержку IPv6.
Так, для всех моих сетапов я проделываю следующие манипуляции:

В файле /etc/sysctl.conf добавить строчки:

net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.all.forwarding = 1
net.ipv6.bindv6only = 0
net.ipv4.ip_forward = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

...и reboot не помешает.

Ну и, как говорится, если совсем ничего не помогает, всегда можно (хоть это и менее безопасно)
запустить контейнер, используя сеть хоста:

docker run -it --network host nginx

В данном режиме маппинг портов не работает - все открытые в контейнере порты автоматически становятся видны снаружи.
Поэтому, в данном случае, следующий шаг это, конечно, конфигурация firewall для хоста.

Но это уже - другая история ;-)