Решение My Visual Studio имеет следующую структуру папок:
- root (папка)
- src (папка)
- .dockerignore
- wdm.odataapi (папка)
- dockerfile
- docker-compose.yml
dockerfile создается Visual Studio
FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk AS build
WORKDIR /src
COPY ["src/Wdm.ODataApi/Wdm.ODataApi.csproj", "src/Wdm.ODataApi/"]
COPY ["src/Wdm.Common/Wdm.Common.csproj", "src/Wdm.Common/"]
COPY ["src/Wdm.Data.Init/Wdm.Data.Init.csproj", "src/Wdm.Data.Init/"]
COPY ["src/Wdm.Data/Wdm.Data.csproj", "src/Wdm.Data/"]
COPY ["src/Wdm.Domain/Wdm.Domain.csproj", "src/Wdm.Domain/"]
COPY ["src/Wdm.Core/Wdm.Core.csproj", "src/Wdm.Core/"]
RUN dotnet restore "src/Wdm.ODataApi/Wdm.ODataApi.csproj"
COPY . .
WORKDIR "/src/src/Wdm.ODataApi"
RUN dotnet build "Wdm.ODataApi.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "Wdm.ODataApi.csproj" -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "Wdm.ODataApi.dll"]
docker-compose.yml создан мной.Моей целью также является сборка проекта с использованием dockerfile, когда docker-compose up является fire.
version: '3.3'
services:
sql:
image: "mcr.microsoft.com/mssql/server:2017-latest"
ports:
- "1433:1433"
environment:
ACCEPT_EULA: Y
SA_PASSWORD: PASSWORD
wmdodataapi:
depends_on:
- sql
build:
context: .
dockerfile: dockerfile
image: janminarik/wdmodataapi:latest
ports:
- "8001:80"
environment:
MS_SQL_CONNECTION_STRING: Server=sql; Database=Wdm; User ID=sa;Password=PASSWORD
Когда я запускаю сборку docker-compose up, не запускается.
Я думаю, что проблема здесь
context: .
dockerfile: dockerfile