Size: a a a

2020 August 24

ŹR

Źmićer Rubinštejn in pro.elixir
Я вообще не знаю и тыкаю пальцем в небо, но может 127.0.0.1 это типа не ipv6 и оно на это ругается?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
И надо 0000
источник

PG

Pig Greenest in pro.elixir
Źmićer Rubinštejn
Я вообще не знаю и тыкаю пальцем в небо, но может 127.0.0.1 это типа не ipv6 и оно на это ругается?
источник

VS

Vladimir Sekisov in pro.elixir
при :inet6 все адреса придется писатьв формате IPv6
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Мне почему-то кажется что 0000 может прокатить
источник

LL

Lama Lover in pro.elixir
Źmićer Rubinštejn
Я вообще не знаю и тыкаю пальцем в небо, но может 127.0.0.1 это типа не ipv6 и оно на это ругается?
Для ipv6 надо тогда ::1
источник

VS

Vladimir Sekisov in pro.elixir
"::1"  или   {0,0,0,0,0,0,0,1}
источник

V

V in pro.elixir
Vladimir Sekisov
"::1"  или   {0,0,0,0,0,0,0,1}
логично, но в браузере тогда не алё
источник

V

V in pro.elixir
Źmićer Rubinštejn
Я вообще не знаю и тыкаю пальцем в небо, но может 127.0.0.1 это типа не ipv6 и оно на это ругается?
да
источник

V

V in pro.elixir
Źmićer Rubinštejn
И надо 0000
нет
источник

V

V in pro.elixir
Задача - слушать конкретный интерфейс, а не все
источник

V

V in pro.elixir
Вот этот коммит
https://github.com/42entertainment/phoenix/commit/641d21ef897f03149b2ee9cc3a67d80f11c5130b#diff-74ed4538100bd38703397fa86a853abaL28-R32
До него было :inet6, после него стало transport_options: [socket_opts: [:inet6]], но суть видимо осталась прежней
источник

V

V in pro.elixir
источник

V

V in pro.elixir
источник

V

V in pro.elixir
То есть нынешний феникс из коробки - по сути с неконфигурируемым под ipv4 биндингом, нельзя его заставить слушать 127.0.0.1 или 172.17.0.xx или 192.168.0.xxx итогдалие. Либо отключать inet6.
источник

LL

Lama Lover in pro.elixir
Странно, а зачем тебе в докере слушать именно 127.0.0.1 ?
источник

V

V in pro.elixir
Lama Lover
Странно, а зачем тебе в докере слушать именно 127.0.0.1 ?
это в сочетании с network=host
источник

V

V in pro.elixir
либо стандартный бридж и порт-форвардинг 127.0.0.1:4000:4000, либо network=host и слушать 127.0.0.1. Второе удобнее, потому что можно указывать database url и прочие внутренние урлы как 127.0.0.1, а не 172.17.0.1
источник

IK

Ihor Katkov in pro.elixir
V
Трабла вот в чём. Как мы все знаем, если хотим чтобы феникс слушал только 127.0.0.1, то нужно сделать
config :my_app, MyAppWeb.Endpoint,
 http: [
   ip: {127, 0, 0, 1},
   ...
 ]

И оно работает в случаях
- в дев-режиме нативно и в докере
- в прод-режиме нативно
А в прод-режиме в докере не работает. Пишет
** (Mix) Could not start application myapp: Myapp.Application.start(:normal, []) returned an error: shutdown: failed to start child: MyappWeb.Endpoint
   ** (EXIT) shutdown: failed to start child: {:ranch_listener_sup, MyappWeb.Endpoint.HTTP}
       ** (EXIT) shutdown: failed to start child: :ranch_acceptors_sup
           ** (EXIT) :badarg

И только если убрать строку transport_options: [socket_opts: [:inet6]] из конфига - начинает работать.
ммм
источник

IK

Ihor Katkov in pro.elixir
а какая версия elixir/otp?
источник