nginx на docker: сброс соединения одноранговым узлом - PullRequest
1 голос
/ 01 августа 2020

ОС: Manjaro KDE; Docker версия: 19.03.12-ce

Пытался найти похожие вопросы, но мне ничего не помогло.

Я не могу получить доступ к nginx при запуске на docker или на любом другом контейнер, если на то пошло.

$ docker run -p 80:80 nginx
$ curl -vvv localhost
*   Trying ::1:80...
* Connected to localhost (::1) port 80 (#0)
> GET / HTTP/1.1
> Host: localhost
> User-Agent: curl/7.71.1
> Accept: */*
>
* Recv failure: Connection reset by peer
* Closing connection 0
curl: (56) Recv failure: Connection reset by peer

Вот соответствующая часть вывода netstat:

$ sudo netstat -pnltu | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      80884/docker-proxy

Я также пробовал:

$ docker run -p 127.0.0.1:80:80 nginx

Что приводит к netstat :

$ sudo netstat -pnltu | grep 80
tcp        0      0 127.0.0.1:80            0.0.0.0:*               LISTEN      81440/docker-proxy

С таким же результатом. Однако, если я запустил его так:

$ docker run --network host -p 80:80 nginx

Он работает, как ожидалось. Есть идеи, почему это так?

1 Ответ

1 голос
/ 03 августа 2020
• 1000 VPN, или отключив его.

Если у кого-то возникнет что-то подобное, проверьте свои iptables.

PostUp = iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT && ip6tables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT && ip6tables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...