gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 20:03:48 24 4
gpt4 key购买 nike

我启动了启用了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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com