`new HttpRequestMessage()` в приложении Docker не может получить доступ к Интернету?

Следующий код (.Net core 2.1, созданный с помощью Visual Studio) выполняется без ошибок, если не в докере.

var uri = new Uri("https://usbtrustgateway.usbank.com/portal/login.do");
using(var request = new HttpRequestMessage(RequestUri: uri, Method: httpMethod)) {

Однако при работе в докере (Linux) или отладке при запуске «docker-compose» с использованием Visual Studio возникла следующая ошибка?

{System.Net.Http.HttpRequestException: при отправке запроса произошла ошибка. ---> System.Net.Http.CurlException: не удалось подключиться к серверу в System.Net.Http.CurlHandler.ThrowIfCURLEError (ошибка CURLcode) в System.Net.Http.CurlHandler.MultiAgent.FinishRequest (StrongToWeakReference``1 easyWrapper , CURLcode messageResult) --- Конец внутренней трассировки стека исключений --- в System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)}


person ca9163d9    schedule 13.08.2018    source источник
comment
Попробуйте перезапустить docker. Я обнаружил, что Docker в Windows и любые контейнеры внутри не могут получить доступ к Интернету при первом запуске, поэтому каждый день мне приходится перезапускать его. Возможно, это не относится к вашей ситуации, конечно :)   -  person Llama    schedule 13.08.2018
comment
какая у вас настройка докера? Какие порты выставляете?   -  person K F    schedule 13.08.2018
comment
@kfrajer Я не думаю, что открытые порты имеют значение :)   -  person Llama    schedule 13.08.2018


Ответы (1)


После приведенной ниже проблемы с github кажется, что у вас есть базовая ошибка запроса, насколько говорит исключение. Не так много информации, вы должны проверить это со стороны запроса.

https://github.com/dotnet/corefx/issues/24472

Кроме того, с личной точки зрения, у docker обычно есть проблемы с подключением на моей стороне, поэтому попробуйте включить и выключить его и посмотреть, работает ли он, иначе вам придется отлаживать вещи на стороне curl. Может быть такой же, как проблема с github, как указано.

person Nicholas    schedule 13.08.2018