использование dockerfile, сгенерированного Visual Studio, в процессе сборки docker-compose - PullRequest
1 голос
/ 27 марта 2019

Решение 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...