Hola, la gente ha estado mirando esto durante demasiado tiempo y necesita ayuda.
Hice un sitio web principal de ASP.NET que no es nada elegante, solo la plantilla que va con VS 2017 (v 1.1). Publico el sitio usando dotnet core cli y construyo una imagen usando este dockerfile:
FROM microsoft/dotnet:1.1-runtime COPY /Publish /dotnetapp WORKDIR /dotnetapp EXPOSE 8444 ENTRYPOINT ["dotnet", "Inqu.dll"]Cuando ejecuto la imagen creada con:
docker run -it <image_name:tag> -p 8444:8444La imagen se inicia esperando la solicitud:
Hosting environment: Production Content root path: /dotnetapp Now listening on: http://*:8444 Application started. Press Ctrl+C to shut down.pero no puedo acceder al sitio y obtengo un ERR_CONNECTION_REFUSED cuando intento acceder al sitio pensando en http://local-ip:8444/
He modificado WebHostBuild para:
var host = new WebHostBuilder() .UseKestrel() .UseUrls("http://*:8444") .UseContentRoot(Directory.GetCurrentDirectory()) .UseStartup<Startup>() .UseApplicationInsights() .Build(); host.Run();Entonces debería escuchar el puerto 8444, también he intentado configurar:
ENV ASPNETCORE_URLS http://*:8444en el Dockerfile pero no ayuda.
Tengo algunas otras imágenes en la ventana acoplable funcionando (gogs y mysql) y puedo acceder a ellas con mi ip local: puerto sin problemas, pero no puedo conectarme al servidor Kestrel.
Puede alguien por favor ayudarme?
Fue un error estúpido los argumentos estaban en el orden equivocado
docker run -it -p 8444:8444 <image_name:tag>Y funcionó :\