diff --git a/.dockerignore b/directory/.dockerignore
similarity index 100%
rename from .dockerignore
rename to directory/.dockerignore
diff --git a/directory/src/FilterLists.Directory.Api/Dockerfile b/directory/src/FilterLists.Directory.Api/Dockerfile
index 868117610..ef1a5a0ff 100644
--- a/directory/src/FilterLists.Directory.Api/Dockerfile
+++ b/directory/src/FilterLists.Directory.Api/Dockerfile
@@ -1,22 +1,36 @@
-#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
-
-FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-alpine AS base
+# init base
+FROM mcr.microsoft.com/dotnet/core/runtime-deps:3.1-alpine AS base
WORKDIR /app
EXPOSE 80
-EXPOSE 443
+ENTRYPOINT ./FilterLists.Directory.Api
+# init build
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-alpine AS build
+
+# restore
WORKDIR /src
-COPY ["directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj", "directory/src/FilterLists.Directory.Api/"]
-RUN dotnet restore "directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj"
-COPY . .
-WORKDIR "/src/directory/src/FilterLists.Directory.Api"
-RUN dotnet build "FilterLists.Directory.Api.csproj" -c Release -o /app/build
+COPY src/FilterLists.Directory.Domain/FilterLists.Directory.Domain.csproj FilterLists.Directory.Domain/
+COPY src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj FilterLists.Directory.Application/
+COPY src/FilterLists.Directory.Infrastructure.Migrations/FilterLists.Directory.Infrastructure.Migrations.csproj FilterLists.Directory.Infrastructure.Migrations/
+COPY src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj FilterLists.Directory.Infrastructure/
+WORKDIR /src/FilterLists.Directory.Api
+COPY 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.Application/. FilterLists.Directory.Application/
+COPY src/FilterLists.Directory.Infrastructure.Migrations/. FilterLists.Directory.Infrastructure.Migrations/
+COPY src/FilterLists.Directory.Infrastructure/. FilterLists.Directory.Infrastructure/
+WORKDIR /src/FilterLists.Directory.Api
+COPY src/FilterLists.Directory.Api/. .
+RUN dotnet build --no-restore -c Release
+
+# publish
FROM build AS publish
-RUN dotnet publish "FilterLists.Directory.Api.csproj" -c Release -o /app/publish
+RUN dotnet publish --no-build -c Release -o /app/publish -r linux-musl-x64 -p:PublishSingleFile=true
+# package final
FROM base AS final
-WORKDIR /app
-COPY --from=publish /app/publish .
-ENTRYPOINT ["dotnet", "FilterLists.Directory.Api.dll"]
+COPY --from=publish /app/publish .
\ No newline at end of file
diff --git a/directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj b/directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj
index 30f5ed913..d05aa6276 100644
--- a/directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj
+++ b/directory/src/FilterLists.Directory.Api/FilterLists.Directory.Api.csproj
@@ -6,12 +6,7 @@
enable
true
true
- true
- linux-musl-x64
- 9bfe2a36-880e-4da0-994f-a9641e228ba3
- Linux
- ..\..\..\docker-compose.dcproj
- ..\..\..
+ linux-musl-x64;win10-x64
diff --git a/directory/src/FilterLists.Directory.Api/Properties/launchSettings.json b/directory/src/FilterLists.Directory.Api/Properties/launchSettings.json
index 39cec19af..c6bd4c5e3 100644
--- a/directory/src/FilterLists.Directory.Api/Properties/launchSettings.json
+++ b/directory/src/FilterLists.Directory.Api/Properties/launchSettings.json
@@ -5,8 +5,7 @@
"commandName": "Docker",
"launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/lists",
- "publishAllPorts": true,
- "useSSL": true
+ "publishAllPorts": true
}
}
}
\ No newline at end of file
diff --git a/directory/src/FilterLists.Directory.Api/appsettings.json b/directory/src/FilterLists.Directory.Api/appsettings.json
deleted file mode 100644
index 9e26dfeeb..000000000
--- a/directory/src/FilterLists.Directory.Api/appsettings.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
\ No newline at end of file
diff --git a/directory/src/FilterLists.Directory.Api/debug.Dockerfile b/directory/src/FilterLists.Directory.Api/debug.Dockerfile
new file mode 100644
index 000000000..478e9a877
--- /dev/null
+++ b/directory/src/FilterLists.Directory.Api/debug.Dockerfile
@@ -0,0 +1,4 @@
+# init base for Visual Studio debugging
+FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-alpine AS base
+WORKDIR /app
+EXPOSE 80
\ No newline at end of file
diff --git a/directory/src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj b/directory/src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj
index a21359f89..60035c72f 100644
--- a/directory/src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj
+++ b/directory/src/FilterLists.Directory.Application/FilterLists.Directory.Application.csproj
@@ -19,6 +19,7 @@
+
diff --git a/directory/src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj b/directory/src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj
index 8f1335b97..3c03bf30f 100644
--- a/directory/src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj
+++ b/directory/src/FilterLists.Directory.Infrastructure/FilterLists.Directory.Infrastructure.csproj
@@ -18,4 +18,8 @@
+
+
+
+
\ No newline at end of file
diff --git a/docker-compose.override.yml b/docker-compose.override.yml
index 98b0de9ef..bdf1de3a7 100644
--- a/docker-compose.override.yml
+++ b/docker-compose.override.yml
@@ -2,12 +2,10 @@ version: '3.8'
services:
filterlists.directory.api:
+ build:
+ dockerfile: src/FilterLists.Directory.Api/debug.Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=https://+:443;http://+:80
+ - ASPNETCORE_URLS=http://+:80
ports:
- - "80"
- - "443"
- volumes:
- - ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro
- - ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro
\ No newline at end of file
+ - "80"
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 9868b2eee..04a4ab7d5 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -4,8 +4,8 @@ services:
filterlists.directory.api:
image: ${DOCKER_REGISTRY-}filterlistsdirectoryapi
build:
- context: .
- dockerfile: directory/src/FilterLists.Directory.Api/Dockerfile
+ context: ./directory
+ dockerfile: src/FilterLists.Directory.Api/Dockerfile
depends_on:
- filterlists.directory.db
environment: