我正在使用基本的.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上访问.
您还应该确保在WebHostBuilder上使用.UseUrls(“http:// *:5000 /”)接受Program.cs中Main()内的任何主机名.