我已经开发了一个使用asp dotnet的web应用程序,目前我在IIS上运行它无论如何我可以在docker容器中运行相同的应用程序,
我对Docker比较陌生,我玩过一段时间,我熟悉docker compose,所以我想知道我是否可以(dockerize)我开发的应用程序.
我的Dockerfile现在看起来像:
#Making a dotnet container FROM microsoft/dotnet:latest #Make a directory workdir /app #copy dll files and other dependencies copY . /app #dotnet run should run the app ENTRYPOINT ["DOTNET","RUN"]
解决方法
你需要改变一下你的Dockerfile,试试这个:
#Making a dotnet container FROM microsoft/iis SHELL ["powershell"] RUN Install-WindowsFeature NET-Framework-45-ASPNET ; \ Install-WindowsFeature Web-Asp-Net45 RUN Remove-WebSite -Name 'Default Web Site' RUN New-Website -Name 'app' -Port 80 \ -PhysicalPath 'c:\app' -ApplicationPool '.NET v4.5' #copy dll files and other dependencies copY app app #dotnet run should run the app CMD ["ping","-t","localhost"]
测试一下
docker build -t app . docker run --name app -d -p 80:80 app docker inspect --format="{{.NetworkSettings.Networks.nat.IPAddress}}" app
它会给你一个ip,只需在你的浏览器中测试它.