невозможно построить. net образ основного API в docker - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь создать образ для net проекта ядра web 3.1 web api, но не могу создать образ. Я застрял при восстановлении пакетов проекта с помощью do tnet restore. Я застрял при использовании команды do tnet build. (не находит решение или файл проекта)

Структура каталогов

https://i.stack.imgur.com/J7sMq.png

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 as base
#FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-nanoserver-1903 AS base
WORKDIR /app

#copy all project and solution files
COPY ./SSFS.Service/.csproj ./SSFS.Service/
COPY ./SSF.EDM/.csproj ./SSF.EDM/
COPY ./API/.csproj ./API/
COPY ./.sln ./

WORKDIR /app/API
RUN dotnet restore "SSFAPI.csproj"
#copy rest of files
COPY . .
WORKDIR /app

#build the project to restore packages
RUN dotnet build --source "./SSFAPI.sln" -c Release -o /publish

#public the project to a folder
RUN dotnet publish --source "SSFAPI.sln" -c Release -o /publish

FROM base AS final
EXPOSE 80
WORKDIR /app
COPY --from=base /app/publish .

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

Выход выше как ниже

https://i.stack.imgur.com/xqoKv.png

Если я создаю проект с помощью команды do tnet, то out будет таким, как показано ниже. Output будет таким, как показано ниже

https://i.stack.imgur.com/t9bV5.png

1 Ответ

0 голосов
/ 04 мая 2020

Dockerfile настроен для запуска из решения root. Вы, вероятно, запускаете docker build из каталога проекта (т.е. там, где на самом деле находится Dockerfile).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...