【问题标题】:Docker: Unable to run .net core api with docker-compose : exited with code 145Docker:无法使用 docker-compose 运行 .net core api:退出代码 145
【发布时间】:2020-03-28 06:57:05
【问题描述】:

我正在尝试在 docker 容器中运行 .net core api,但出现以下错误:

我看到错误的第一个猜测是因为它无法找到 .net core sdk。但正如你所见,我在 dockerfile 中包含了 sdk: FROM mcr.microsoft.com/dotnet/core/aspnet:2.2

Dockerfile

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

# 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 mcr.microsoft.com/dotnet/core/aspnet:2.2
EXPOSE 80/tcp

WORKDIR /app
COPY --from=build-env /app/out .

 ENTRYPOINT ["dotnet", "ApiForDocker.dll"]

docker-compose.yml

version: '3'
services:
  coreapi:    
    build: 
      context: .
      dockerfile: Dockerfile      
    ports:
      - "4002:5000"
    volumes:
      - .:/app

【问题讨论】:

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


    【解决方案1】:

    好的,我通过删除解决了:

      volumes:
          - .:/app
    

    来自我的 docker-compose.yml:

    version: '3'
    services:
      coreapi:    
        build: 
          context: .
          dockerfile: Dockerfile      
        ports:
          - "4002:5000"        
    

    我想问题是我用我的 dockerfile 构建代码,但是在 docker compose 中我基本上是说我想在外面使用我的源代码来使用。它可能在 nodejs 中工作,但我不确定如何使用预构建的 .net 代码作为卷。

    【讨论】:

      猜你喜欢
      • 2020-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-05
      • 1970-01-01
      • 1970-01-01
      • 2022-09-05
      • 2018-07-03
      相关资源
      最近更新 更多