asp.net-mvc - 运行ASP.Net Core Docker镜像

标签 asp.net-mvc docker

我启动了启用了Docker支持的全新ASP.Net Core MVC应用程序。它可以在Visual Studio中运行,但是无法在命令行上运行。显然,我想这样做,以便可以将其推送到存储库并从云中某处的Linux服务器运行。

如果我运行c:\>docker images,我会看到webapplication10:dev图像

如果我运行c:\>docker ps,我会看到运行webapplication10:dev的容器。

我的问题是这个。如何在另一个端口上运行此图像的容器。该文档似乎认为下面的声明应该起作用,但事实并非如此。如果我杀死该容器并尝试运行该容器,则不会创建任何容器。

docker run -d -p 8080:80 webapplication10:dev

To my understanding once I run this, I should be able to browse to localhost:8080 but nope, this does not work. Any ideas?



这是docker-compose(这里没有惊喜,只有库存标准)
version: '3.4'

services:
  webapplication10:
    image: ${DOCKER_REGISTRY}webapplication10
    build:
      context: .
      dockerfile: WebApplication10/Dockerfile

这是Dockerfile
FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base
WORKDIR /app
EXPOSE 80

FROM microsoft/dotnet:2.1-sdk AS build
WORKDIR /src
COPY WebApplication10/WebApplication10.csproj WebApplication10/
RUN dotnet restore WebApplication10/WebApplication10.csproj
COPY . .
WORKDIR /src/WebApplication10
RUN dotnet build WebApplication10.csproj -c Release -o /app

FROM build AS publish
RUN dotnet publish WebApplication10.csproj -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "WebApplication10.dll"]

控制台窗口显示docker ps仍然不显示任何内容。

enter image description here

最佳答案

我学到的解决方案很简单。

您需要在Dockerfile中暴露8080,将其设置为Release以构建:latest标签。

关于asp.net-mvc - 运行ASP.Net Core Docker镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51619993/

相关文章:

c# - asp.net-mvc 中的鼠标监听器

Docker - 无法在卷内的容器之间共享数据(docker-compose 3)

Docker 公开从 7000 到 8000 的所有端口或端口范围

docker - 在 docker 上本地运行 HAProxy 的问题

ruby-on-rails - Dokku 环境变量

c# - 需要从 MVC 中的 View 访问主布局控件

c# - ServicePointManager.DefaultConnectionLimit 返回 Int32.MaxValue

node.js - 为什么docker-compose env_file不起作用,而环境却起作用?

javascript - FullCalendar dayClick 不工作(什么都不做)

asp.net - 我有一个非常非常慢的 EF 查询。我该如何调试呢?