我正在嘗試Docker與我在dotnet核心中編寫的小型WebApi。.Net核心WebApi拒絕在Docker容器中的連接
該Api似乎工作正常,因爲當我運行它與dotnet run
它啓動正常,並可以在端口5000.但是,當我運行它在一個Docker容器它啓動,但我無法達到它的暴露/映射端口。我使用VirtualBox在Windows 10上運行Docker。
我Dockerfile看起來是這樣的:
FROM microsoft/aspnetcore-build:latest
COPY . /app
WORKDIR /app
RUN dotnet restore
EXPOSE 5000
ENV ASPNETCORE_URLS http://*:5000
ENTRYPOINT ["dotnet", "run"]
我建立了dontainer這樣的:
docker build -t api-test:v0 .
而與此命令來運行它:
docker run -p 5000:5000 api-test:v0
的輸出運行命令是:
Hosting environment: Production
Content root path: /app
Now listening on: http://localhost:5000
我自己也嘗試結合的URL不同的方法:
- 作爲
http://+:5000
,http://0.0.0.0:5000
,http://localhost:5000
,... - 通過CLI參數
--urls
/--server.urls
但沒有成功。有沒有人看到我做錯了或失蹤?
你的操作系統是什麼?它是Windows/OSX或Linux? – pizycki
我忘了提。它運行在Windows上......我在 –
運行docker inspect -f {{range .NetworkSettings.Networks}} {{。IPAddress}} {{end}}'「的問題中更新了它的IP。用IP替換'localhost'。看看是否有效。 –
pizycki