Запустите ASP. NET Core Docker Контейнер из командной строки. - PullRequest
0 голосов
/ 13 марта 2020

Я пытаюсь запустить службу ASP. NET Core Web API из командной строки. Он размещен в Docker контейнере и прекрасно работает, когда я запускаю его из Visual Studio.

Но когда я пытаюсь запустить его из командной строки, мой браузер получает ответ ERR_CONNECTION_CLOSED.

Вот строка командной строки, которую я пытался использовать:

docker run -dt 
  -v "C:\Users\UserHere\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" 
  -v "C:\Users\UserHere\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" 
  -v "C:\src\docker_certs:/https/" 
  -e "ASPNETCORE_ENVIRONMENT=Development" 
  -e "ASPNETCORE_URLS=https://+:443;http://+:80" 
  -e "ASPNETCORE_HTTPS_PORT=4849" 
  -e "ASPNETCORE_Kestrel__Certificates__Default__Path=/https/machine-cert.pfx"
  -e "ASPNETCORE_Kestrel__Certificates__Default__Password=password-here"
  -p 4849:443 
  -p 4839:80 
  --name TestingService 
  --entrypoint tail webapiauthenticationtestservice:dev -f /dev/null

Вот команда все в одной строке (как я на самом деле ее запускаю):

docker run -dt -v "C:\Users\UserHere\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" -v "C:\Users\UserHere\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" -v "C:\src\docker_certs:/https/" -e "ASPNETCORE_ENVIRONMENT=Development" -e "ASPNETCORE_URLS=https://+:443;http://+:80" -e "ASPNETCORE_HTTPS_PORT=4849" -e "ASPNETCORE_Kestrel__Certificates__Default__Path=/https/machine-cert.pfx" -e "ASPNETCORE_Kestrel__Certificates__Default__Password=password-here" -p 4849:443 -p 4839:80 --name TestingService --entrypoint tail webapiauthenticationtestservice:dev -f /dev/null

Когда я запускаю docker container ls -a, вот что я получаю:

CONTAINER ID        IMAGE                                 COMMAND               CREATED             STATUS              PORTS                                           NAMES
0ff0050ec07d        webapiauthenticationtestservice:dev   "tail -f /dev/null"   33 seconds ago      Up 32 seconds       0.0.0.0:4839->80/tcp, 0.0.0.0:4849->443/tcp     TestingService

Как я уже говорил выше, когда я пытаюсь go до https://mymachinename.mydomain.net:4849/index.html, я получаю следующее от chrome:

mymachinename.mydomain.net unexpectedly closed the connection.
ERR_CONNECTION_CLOSED

Я хотел бы повторить, что когда я запускаю это из Visual Studio, он работает нормально (хотя он использует разные порты). Поэтому я чувствую, что это должно быть как-то так, как я называю это с помощью docker.

Какие параметры следует использовать для запуска ASP. NET Core Web API Service из Docker в командной строке?

...