Hok*_*ike 13 docker asp.net-core visual-studio-2017
Docker noob在这里......
如何正确运行由Visual Studio 2017在命令行生成的Asp.Net CORE应用程序的docker镜像?
docker run -it -d -p 80:32769 myappimage
Run Code Online (Sandbox Code Playgroud)
似乎没有正常工作(图像运行,但我无法浏览到我的应用程序)
注意:我只是使用默认模板在Studio中创建了一个示例ASP.Net Core Web App,并添加了Docker支持(通过单击"添加Docker支持"复选框).当您执行此操作时,Studio会添加dockerfile和一些docker-compose文件.
当Visual Studio"运行"图像时(通过按F5) - 我可以成功浏览到我的应用程序(通过" http:// localhost:32789 "或类似的主机端口.容器内的应用程序位于端口80上).但我无法弄清楚在命令行自己运行它的命令.
Studio添加到项目中的标准Dockerfile是......
FROM microsoft/aspnetcore:1.1
ARG source
WORKDIR /app
EXPOSE 80
COPY ${source:-obj/Docker/publish} .
ENTRYPOINT ["dotnet", "WebApplication2.dll"]
Run Code Online (Sandbox Code Playgroud)
Ily*_*kov 25
对的,这是可能的.在Release配置中重建您的解决方案并尝试运行docker-compose
项目F5
以确保图像已更新且您的应用程序正常运行.然后执行docker images
console命令.你会看到类似的东西:
REPOSITORY TAG IMAGE ID CREATED SIZE
Your.App latest 673b79a6bb3d About a minute ago 294 MB
Run Code Online (Sandbox Code Playgroud)
您只需从该映像运行一个新容器,并将其公开的端口映射到localhost端口.默认情况下,公开的端口是80
(查看Dockerfile
).例如:
docker run -d -p 1234:80 --name some_name Your.App:latest
Run Code Online (Sandbox Code Playgroud)
那么你的应用程序应该可以访问http://127.0.0.1:1234/
.
说明:
如果设置了Debug配置,则Visual Studio将创建空的不可工作映像.它手动将空容器映射到文件系统以进行调试,"编辑并继续"功能等.这就是dev
没有Visual Studio的图像无用的原因.在Release配置中构建映像以使其可用.
完整的发布过程在文档中描述:用于Docker的Visual Studio工具
发布Docker镜像
完成应用程序的开发和调试周期后,Visual Studio Tools for Docker将帮助您创建应用程序的生产映像.将调试下拉列表更改为 Release并构建应用程序.工具将生成带有
:latest
标记的图像,您可以将其推送到私有注册表或Docker Hub.
归档时间: |
|
查看次数: |
7207 次 |
最近记录: |