From c32e3bc64dad037424a3b72ec867ff5a57b4e484 Mon Sep 17 00:00:00 2001 From: littlefoot Date: Fri, 15 Jul 2022 12:59:19 -0400 Subject: [PATCH] Dockerfile support added to webapi --- WebNovelPortalAPI/.dockerignore | 25 ++++++++++++++++++++++ WebNovelPortalAPI/Dockerfile | 22 +++++++++++++++++++ WebNovelPortalAPI/WebNovelPortalAPI.csproj | 1 + WebNovelPortalAPI/appsettings.json | 2 +- 4 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 WebNovelPortalAPI/.dockerignore create mode 100644 WebNovelPortalAPI/Dockerfile diff --git a/WebNovelPortalAPI/.dockerignore b/WebNovelPortalAPI/.dockerignore new file mode 100644 index 0000000..cd967fc --- /dev/null +++ b/WebNovelPortalAPI/.dockerignore @@ -0,0 +1,25 @@ +**/.dockerignore +**/.env +**/.git +**/.gitignore +**/.project +**/.settings +**/.toolstarget +**/.vs +**/.vscode +**/.idea +**/*.*proj.user +**/*.dbmdl +**/*.jfm +**/azds.yaml +**/bin +**/charts +**/docker-compose* +**/Dockerfile* +**/node_modules +**/npm-debug.log +**/obj +**/secrets.dev.yaml +**/values.dev.yaml +LICENSE +README.md \ No newline at end of file diff --git a/WebNovelPortalAPI/Dockerfile b/WebNovelPortalAPI/Dockerfile new file mode 100644 index 0000000..52ba942 --- /dev/null +++ b/WebNovelPortalAPI/Dockerfile @@ -0,0 +1,22 @@ +FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base +WORKDIR /app +EXPOSE 80 +EXPOSE 443 + +FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build +WORKDIR /src +COPY ["WebNovelPortalAPI/WebNovelPortalAPI.csproj", "WebNovelPortalAPI/"] +COPY ["DBConnection/DBConnection.csproj", "DBConnection/"] +COPY ["Shared/Shared.csproj", "Shared/"] +RUN dotnet restore "WebNovelPortalAPI/WebNovelPortalAPI.csproj" +COPY . . +WORKDIR "/src/WebNovelPortalAPI" +RUN dotnet build "WebNovelPortalAPI.csproj" -c Release -o /app/build + +FROM build AS publish +RUN dotnet publish "WebNovelPortalAPI.csproj" -c Release -o /app/publish + +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . +ENTRYPOINT ["dotnet", "WebNovelPortalAPI.dll"] diff --git a/WebNovelPortalAPI/WebNovelPortalAPI.csproj b/WebNovelPortalAPI/WebNovelPortalAPI.csproj index f011053..9b32535 100644 --- a/WebNovelPortalAPI/WebNovelPortalAPI.csproj +++ b/WebNovelPortalAPI/WebNovelPortalAPI.csproj @@ -4,6 +4,7 @@ net6.0 enable enable + Linux diff --git a/WebNovelPortalAPI/appsettings.json b/WebNovelPortalAPI/appsettings.json index 373723a..84cc7d0 100644 --- a/WebNovelPortalAPI/appsettings.json +++ b/WebNovelPortalAPI/appsettings.json @@ -6,7 +6,7 @@ } }, "ConnectionStrings": { - "DefaultConnection": "Data Source=/home/m/Documents/WebNovelPortal/WebNovelPortalAPI/test_db" + "DefaultConnection": "Data Source=test_db" }, "AllowedHosts": "*" }