diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..3729ff0 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,25 @@ +**/.classpath +**/.dockerignore +**/.env +**/.git +**/.gitignore +**/.project +**/.settings +**/.toolstarget +**/.vs +**/.vscode +**/*.*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/src/Correo/Correo.csproj b/src/Correo/Correo.csproj index aae0fe1..c7068b6 100644 --- a/src/Correo/Correo.csproj +++ b/src/Correo/Correo.csproj @@ -2,6 +2,8 @@ net6.0 + Linux + ..\.. diff --git a/src/Correo/Dockerfile b/src/Correo/Dockerfile new file mode 100644 index 0000000..56fc782 --- /dev/null +++ b/src/Correo/Dockerfile @@ -0,0 +1,33 @@ +#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/aspnet:6.0-bullseye-slim AS base +WORKDIR /app +EXPOSE 80 + +FROM mcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim AS build +WORKDIR /workspace +COPY ["dependencies.props", "."] +COPY ["directory.build.props", "."] +COPY ["nuget.config", "."] +COPY ["src/Correo/Correo.csproj", "src/Correo/"] +COPY ["src/Correo.Application/Correo.Application.csproj", "src/Correo.Application/"] +COPY ["src/Correo.Abstractions/Correo.Abstractions.csproj", "src/Correo.Abstractions/"] +COPY ["src/Correo.Domain/Correo.Domain.csproj", "src/Correo.Domain/"] +COPY ["src/Correo.PublishedLanguage/Correo.PublishedLanguage.csproj", "src/Correo.PublishedLanguage/"] +COPY ["src/Correo.Mailgun/Correo.Mailgun.csproj", "src/Correo.Mailgun/"] +COPY ["src/Correo.MailKit/Correo.MailKit.csproj", "src/Correo.MailKit/"] +COPY ["src/Correo.NetSmtpClient/Correo.NetSmtpClient.csproj", "src/Correo.NetSmtpClient/"] +COPY ["src/Correo.SendGrid/Correo.SendGrid.csproj", "src/Correo.SendGrid/"] +RUN dotnet restore "src/Correo/Correo.csproj" +COPY . . +WORKDIR "/workspace/src/Correo" +RUN dotnet build "Correo.csproj" -c Release -o /app/build + +FROM build AS publish +RUN dotnet publish "Correo.csproj" -c Release -o /app/publish /p:UseAppHost=false + +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . + +ENTRYPOINT ["dotnet", "Correo.dll"] \ No newline at end of file