我正在用一个基本的.NET核心项目测试Docker。我从此docker文件构建图像:
FROM microsoft/dotnet:latest COPY . /app WORKDIR /app/API RUN ["dotnet", "restore"] RUN ["dotnet", "build"] EXPOSE 5000/tcp CMD ["dotnet", "run", "--server.urls", "http://*:5000"]
我运行它,它运行完美。现在唯一的问题是,它在什么IP上运行?
我正在Windows上运行Docker!
问候
您已经在内部公开了端口,因此我唯一建议的另一件事就是在启动映像时也检查您是否正在打开端口:
docker run -it -p 5000:5000 <imagename>
这会将实例内部的端口5000打开到本地计算机上的端口5000,然后应在127.0.0.1:5000或上进行访问localhost:5000。
127.0.0.1:5000
localhost:5000
你也应该确保您接受内的任何主机名Main()中Program.cs有.UseUrls("http://*:5000/")你的WebHostBuilder。
Main()
Program.cs
.UseUrls("http://*:5000/")
WebHostBuilder