build: 🔨🚧 misc WIP build changes

This commit is contained in:
Collin M. Barrett 2020-08-29 09:17:46 -05:00
parent a08e1827ab
commit 3c696f877c
5 changed files with 44 additions and 15 deletions

View file

@ -24,7 +24,6 @@ services:
dockerfile: directory/src/FilterLists.Directory.Api/Dockerfile.dev
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://+:80
directory.db:
command: ["postgres", "-c", "log_statement=all"]

View file

@ -32,6 +32,8 @@ services:
- directory.db
environment:
ConnectionStrings__DirectoryConnection: ${DIRECTORY_CONNECTION_STRING}
environment:
- ASPNETCORE_URLS=http://+:80
directory.db:
image: postgres:alpine

View file

@ -2,31 +2,31 @@
FROM mcr.microsoft.com/dotnet/core/runtime-deps:3.1-alpine AS base
WORKDIR /app
EXPOSE 80
ENTRYPOINT ./FilterLists.Directory.Api
# init build
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-alpine AS build
# restore
WORKDIR /src
COPY src/FilterLists.Directory.Domain/FilterLists.Directory.Domain.csproj FilterLists.Directory.Domain/
COPY src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj FilterLists.Directory.Infrastructure/
COPY src/FilterLists.Directory.Infrastructure.Migrations/FilterLists.Directory.Infrastructure.Migrations.csproj FilterLists.Directory.Infrastructure.Migrations/
COPY src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj FilterLists.Directory.Application/
COPY directory/src/FilterLists.Directory.Domain/FilterLists.Directory.Domain.csproj FilterLists.Directory.Domain/
COPY directory/src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj FilterLists.Directory.Infrastructure/
COPY directory/src/FilterLists.Directory.Infrastructure.Migrations/FilterLists.Directory.Infrastructure.Migrations.csproj FilterLists.Directory.Infrastructure.Migrations/
COPY directory/src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj FilterLists.Directory.Application/
WORKDIR /src/FilterLists.Directory.Api
COPY src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj .
COPY directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj .
RUN dotnet restore
# build
WORKDIR /src
COPY src/FilterLists.Directory.Domain/. FilterLists.Directory.Domain/
COPY src/FilterLists.Directory.Infrastructure/. FilterLists.Directory.Infrastructure/
COPY src/FilterLists.Directory.Infrastructure.Migrations/. FilterLists.Directory.Infrastructure.Migrations/
COPY src/FilterLists.Directory.Application/. FilterLists.Directory.Application/
COPY directory/src/FilterLists.Directory.Domain/. FilterLists.Directory.Domain/
COPY directory/src/FilterLists.Directory.Infrastructure/. FilterLists.Directory.Infrastructure/
COPY directory/src/FilterLists.Directory.Infrastructure.Migrations/. FilterLists.Directory.Infrastructure.Migrations/
COPY directory/src/FilterLists.Directory.Application/. FilterLists.Directory.Application/
WORKDIR /src/FilterLists.Directory.Api
COPY src/FilterLists.Directory.Api/. .
COPY directory/src/FilterLists.Directory.Api/. .
RUN dotnet publish --no-restore -c Release -o /app/publish -r linux-musl-x64 -p:PublishSingleFile=true
# package final
FROM base AS final
COPY --from=build /app/publish .
COPY --from=build /app/publish .
ENTRYPOINT ./FilterLists.Directory.Api

View file

@ -1,4 +1,32 @@
# init base for Visual Studio debugging
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-alpine AS base
WORKDIR /app
EXPOSE 80
EXPOSE 80
# init build
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-alpine AS build
# restore
WORKDIR /src
COPY directory/src/FilterLists.Directory.Domain/FilterLists.Directory.Domain.csproj FilterLists.Directory.Domain/
COPY directory/src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj FilterLists.Directory.Infrastructure/
COPY directory/src/FilterLists.Directory.Infrastructure.Migrations/FilterLists.Directory.Infrastructure.Migrations.csproj FilterLists.Directory.Infrastructure.Migrations/
COPY directory/src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj FilterLists.Directory.Application/
WORKDIR /src/FilterLists.Directory.Api
COPY directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj .
RUN dotnet restore
# build
WORKDIR /src
COPY directory/src/FilterLists.Directory.Domain/. FilterLists.Directory.Domain/
COPY directory/src/FilterLists.Directory.Infrastructure/. FilterLists.Directory.Infrastructure/
COPY directory/src/FilterLists.Directory.Infrastructure.Migrations/. FilterLists.Directory.Infrastructure.Migrations/
COPY directory/src/FilterLists.Directory.Application/. FilterLists.Directory.Application/
WORKDIR /src/FilterLists.Directory.Api
COPY directory/src/FilterLists.Directory.Api/. .
RUN dotnet publish --no-restore -o /app/publish -r linux-musl-x64
# package final
FROM base AS final
COPY --from=build /app/publish .
ENTRYPOINT ./FilterLists.Directory.Api

View file

@ -6,7 +6,7 @@ ENV PATH /app/node_modules/.bin:$PATH
RUN npm install react-scripts -g
WORKDIR /usr/src/app/
COPY package*.json ./
RUN npm install
RUN npm i
# start
COPY . ./