asp.net - 如何将Visual Studio ASP.NET 5项目发布到Docker Hub?

标签 asp.net docker

我正在寻找一种将网站发布到Docker容器服务提供商DaoCloud的方法。

提供程序不会为您打开其API。他们只是让您从GitHub上的源代码构建应用程序,或者从Docker Hub提取图像。如果您是从GitHub构建的,则可以指定用于构建的Dockerfile。

但是正如您所看到的,ASP.NET 5项目中的Dockerfile
Dockerfile.release

它没有指定任何端口。 projects.json / commands / web也不是。我尝试手动添加端口规范,然后构建它,但是没有成功。 wwwroot文件夹中的所有内容均返回404错误。

如何通过Visual Studio创建可构建的存储库或创建Docker Hub镜像?

最佳答案

您的 Dockerfile 似乎正确。这是我用来构建的:

FROM microsoft/aspnet

COPY . /app
WORKDIR /app
RUN ["dnu", "restore"]

EXPOSE 5004
ENTRYPOINT ["dnx", "-p", "project.json", "web"]

也许您可以共享 project.json 。这是project.json中与dockerfile中声明的入口点匹配的命令。
"commands": {
    "web": "Microsoft.AspNet.Server.Kestrel --server.urls http://*:5004"
},

(*)允许红est监听来自所有域的请求。

您可以在此处找到一些示例:AspNet Home Samples

希望这可以帮助 !

关于asp.net - 如何将Visual Studio ASP.NET 5项目发布到Docker Hub?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36235359/

相关文章:

c# - 如何更新标签中的文本

python - Angular前端,用于Flask API,全部在docker内部

amazon-web-services - Kubernetes身份验证问题拉ECR图像

docker - Docker将两个容器上的相同端口映射到主机上的不同端口

windows - Docker容器未在boot2上运行

javascript - 我需要 GridView 的水平滚动

javascript - AspTokenInput 启用和禁用

asp.net - 如何使用 Web API 实现基于声明的身份验证?

c# - 无法对空引用执行运行时绑定(bind),但它不是空引用

mysql - 无法从 Spring Boot 应用程序运行 flyway 脚本,数据库作为 docker 容器中的 Mysql