【问题标题】:How do you correctly set a .net core 3.1 web api url for docker-compose?您如何为 docker-compose 正确设置 .net core 3.1 web api url?
【发布时间】:2021-08-13 22:21:32
【问题描述】:

我正在尝试使用 docker Linux 容器设置和测试 aspnetcore 3.1 Web API。容器构建并运行 Web API,但 URL 如下:

https://localhost:6001/https://%7BServiceHost%7D:6001/Swagger

应该是https://localhost:6001/Swagger

我应该如何设置我的 docker 文件/docker-compose.yml 以提供正确的 URL?

Docker 文件:

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app
EXPOSE 443

COPY . ./
RUN dotnet publish ApiProject -c Release -o out

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY --from=build-env /app/out .

ENTRYPOINT ["dotnet", "ApiProject.dll", "--environment=Development"]

docker-compose.yml:

version: '3.4'

services:
  apiproject:
    image: ${DOCKER_REGISTRY-}apiproject
    environment:
      - ASPNETCORE_URLS=https://+:443;http://+:80
      - ASPNETCORE_HTTPS_PORT=443
    ports:
      - "6000:80"
      - "6001:443"
    build:
      context: .
      dockerfile: ApiProject/Dockerfile

docker-compose.override.yml:

version: '3.4'

services:
  checkoutpaymentgateway:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
      - ASPNETCORE_URLS=https://+:443;http://+:80
      - ASPNETCORE_Kestrel__Certificates__Default__Password=helmet
      - ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
    volumes:
      - ~/.aspnet/https:/https:ro
    ports:
      - "6000:80"
      - "6001:443"

【问题讨论】:

    标签: docker docker-compose asp.net-core-3.1


    【解决方案1】:

    我遇到了同样的问题。我的解决方案是重新创建 docker-compose 文件,正如我后来看到的,问题出在 docker-compose.dcproj 文件中。它是由 VS 文件自动生成的。尝试使用任何文本编辑器打开此文件,该文件位于项目的父目录中,并检查 标签。在我的情况下,它是:{Scheme}://localhost:{ServicePort}/{Scheme}://{ServiceHost}:{ServicePort}/swagger。我删除了 {Scheme}://localhost:{ServicePort}/{Scheme}://{ServiceHost}:{ServicePort}/swagger 。要解决这个问题,你可以检查这个标签,或者只是在 VS 中重新生成 docker-compose。

    【讨论】:

      猜你喜欢
      • 2021-10-16
      • 1970-01-01
      • 2021-04-27
      • 2019-01-31
      • 1970-01-01
      • 2021-08-04
      • 2019-12-29
      • 1970-01-01
      • 2021-11-03
      相关资源
      最近更新 更多