Dockerの新機能で、1つはmongoDBを実行し、もう1つはWebアプリケーションを実行する2つのコンテナを設定しようとしています。.NETコアに到達できないDocker-compose
localhost:5000または0.0.0.0:5000経由で.NETコアアプリケーションにアクセスできないという問題があります。
Mongoは正常に動作しています。ここで
は私のドッキングウィンドウ-compose.ymlversion: '3'
services:
web:
build: .
ports:
- "5000:5000"
mongo:
build: ../../../docker/wishare-mongo/
volumes:
- ../../../docker/wishare-mongo:/data/db
ports:
- "27017:27017"
Dockerfile .NETのコアアプリケーション用です
FROM microsoft/aspnetcore-build:2.0 AS build-env
WORKDIR /app
ENV ASPNETCORE_URLS="http://*:5000"
# Copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore
# Copy everything else and build
COPY . ./
RUN dotnet publish -c Release -o out
# Build runtime image
FROM microsoft/aspnetcore:2.0
WORKDIR /app
COPY --from=build-env /app/out .
EXPOSE 5000
ENTRYPOINT ["dotnet", "Wishare-Integration-Api.dll"]
ドッカ・コン構築し、このために結果をエラーなしで実行をドッキングウィンドウは、構成ウェブコンテナ:
web_1 |ホスティング環境:プロダクション web_1 |コンテンツルートパス:/ app web_1 |今聞いている: http://[::]:80 web_1 |アプリケーションが開始されました。 Ctrl + Cを押して を終了します。
これはdocker psの結果で、ポート5000はdocker ps結果に基づいてエクスポートする必要があります。
任意のアイデア?
出力は、アプリケーションがコンテナ内のポート80でリッスンしていることを示します。明示的にポートを80に設定する何かがあなたのアプリの起動時にありますか?環境変数をオーバーライドしている可能性があります。 – nlawalker
また、ホスト上で明示的にlocalhostの代わりに127.0.0.1を使用してみてください。 localhostが動作しない環境がいくつか設定されています。 – nlawalker
あなたの質問に答えるために、@ nlawalkerいいえポート5000でロードするドッカーではなく、直接アプリケーションを実行すると、何も変更しませんでした。また、127.0.0.1もポート5000ではなく、80でも動作しません –