From c11d01737076d4971bfdc937a9335dd6ae91ba12 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Wed, 8 May 2019 19:25:14 -0500 Subject: [PATCH] isolate app from environment in /app directory --- src/FilterLists.Api/Dockerfile | 15 ++++++++------- src/FilterLists.Web/Dockerfile | 10 ++++++---- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/FilterLists.Api/Dockerfile b/src/FilterLists.Api/Dockerfile index b769b62bc..aac6363fc 100644 --- a/src/FilterLists.Api/Dockerfile +++ b/src/FilterLists.Api/Dockerfile @@ -3,6 +3,7 @@ # init base FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-alpine as base +WORKDIR /app ENV DataDirectory__Path "data" ENV ASPNETCORE_URLS "http://*:5000" EXPOSE 5000 @@ -12,18 +13,18 @@ ENTRYPOINT ["dotnet", "FilterLists.Api.dll"] FROM mcr.microsoft.com/dotnet/core/sdk:2.2-alpine AS build # restore -WORKDIR /src +WORKDIR /app/src COPY src/FilterLists.Data/FilterLists.Data.csproj FilterLists.Data/ COPY src/FilterLists.Services/FilterLists.Services.csproj FilterLists.Services/ -WORKDIR /src/FilterLists.Api +WORKDIR /app/src/FilterLists.Api COPY src/FilterLists.Api/FilterLists.Api.csproj . RUN dotnet restore # build -WORKDIR /src +WORKDIR /app/src COPY src/FilterLists.Data/. FilterLists.Data/ COPY src/FilterLists.Services/. FilterLists.Services/ -WORKDIR /src/FilterLists.Api +WORKDIR /app/src/FilterLists.Api COPY src/FilterLists.Api/. . RUN dotnet build -c Release --no-restore @@ -32,7 +33,7 @@ FROM build AS test-data ENTRYPOINT ["dotnet", "test"] # restore Data.Tests -WORKDIR /tests/FilterLists.Data.Tests +WORKDIR /app/tests/FilterLists.Data.Tests COPY tests/FilterLists.Data.Tests/FilterLists.Data.Tests.csproj . RUN dotnet restore @@ -46,7 +47,7 @@ FROM build AS test-services ENTRYPOINT ["dotnet", "test"] # restore Services.Tests -WORKDIR /tests/FilterLists.Services.Tests +WORKDIR /app/tests/FilterLists.Services.Tests COPY tests/FilterLists.Services.Tests/FilterLists.Services.Tests.csproj . RUN dotnet restore @@ -60,5 +61,5 @@ RUN dotnet publish -c Release -o out --no-restore --no-build # final FROM base as final -COPY --from=publish /src/FilterLists.Api/out . +COPY --from=publish /app/src/FilterLists.Api/out . COPY data/. data/ diff --git a/src/FilterLists.Web/Dockerfile b/src/FilterLists.Web/Dockerfile index 9db44bfb6..4b87eb9a3 100644 --- a/src/FilterLists.Web/Dockerfile +++ b/src/FilterLists.Web/Dockerfile @@ -3,27 +3,29 @@ # init base FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-alpine as runtime +WORKDIR /app ENV ASPNETCORE_URLS "http://*:5000" EXPOSE 5000 ENTRYPOINT ["dotnet", "FilterLists.Web.dll"] # init build FROM mcr.microsoft.com/dotnet/core/sdk:2.2-alpine AS build +WORKDIR /app RUN apk add --update nodejs nodejs-npm # restore COPY FilterLists.Web.sln ./ -WORKDIR /src/FilterLists.Web/ +WORKDIR /app/src/FilterLists.Web/ COPY src/FilterLists.Web/FilterLists.Web.csproj ./ -WORKDIR / +WORKDIR /app RUN dotnet restore # publish -WORKDIR /src/FilterLists.Web/ +WORKDIR /app/src/FilterLists.Web/ COPY src/FilterLists.Web/. ./ RUN dotnet publish -c Release -o out --no-restore # run FROM runtime as final -COPY --from=build /src/FilterLists.Web/out ./ +COPY --from=build /app/src/FilterLists.Web/out ./ \ No newline at end of file