Я пытаюсь поместить мой простой REST Api (построенный на ядре asp.net) в Docker-контейнер.
У меня есть следующий файл Docker
FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.1-sdk AS build
WORKDIR /src
COPY ["/", "SimpleApp.Api/"]
RUN dotnet restore "SimpleApp.Api/SimpleApp.Api.csproj"
COPY . .
WORKDIR "/src/SimpleApp.Api"
RUN dotnet build "SimpleApp.Api.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "SimpleApp.Api.csproj" -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "SimpleApp.Api.dll"]
Я могу успешно собратьизображение из этого файла, но когда я запускаю контейнер, я не могу, например, вызвать ни один из URL-адресов + у меня есть чванство поверх моего API, поэтому он должен показывать мне страницу, но это не так.
docker run -d --name "mySimpleContainer" "MySimpleApp:latest" --ports 5000:80
URL, похожий на localhost:5000
, не работает так, во-первых, я проверил журналы:
........
2019-02-02 13:37:17.3635||DEBUG|Microsoft.AspNetCore.Hosting.Internal.WebHost|Loaded hosting startup assembly SimpleApp.Api
Hosting environment: Production
Content root path: /app
Now listening on: http://[::]:80
Application started. Press Ctrl+C to shut down.
выглядит хорошо для меня.Вторичный, я проверил, если 5000 занят или нет ... и вдруг это не так !!!чтобы проверить порт, который я использовал netstat -an | find ":5000"
Кто-нибудь знает, где мне не удалось?