|
1 | | -#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. |
2 | | - |
3 | 1 | FROM mcr.microsoft.com/dotnet/aspnet:8.0-bookworm-slim AS base |
4 | | - |
5 | 2 | WORKDIR /app |
| 3 | +ENV ASPNETCORE_URLS=http://+:80 |
6 | 4 | EXPOSE 80 |
7 | | -EXPOSE 443 |
8 | 5 |
|
9 | | -RUN apt-get update \ |
10 | | - && apt-get install -y ca-certificates curl gnupg \ |
11 | | - && mkdir -p /etc/apt/keyrings |
12 | | -RUN curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg |
13 | | -RUN echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list |
14 | | -RUN apt-get update && apt-get install nodejs -y |
15 | | -RUN npm install -g @angular/cli && npm update |
| 6 | +FROM node:20-bullseye-slim AS node |
16 | 7 |
|
17 | 8 | FROM mcr.microsoft.com/dotnet/sdk:8.0-bookworm-slim AS build |
18 | | - |
| 9 | +ENV NPM_CONFIG_LEGACY_PEER_DEPS=true |
| 10 | +COPY --from=node /usr/local /usr/local |
19 | 11 | WORKDIR /src |
20 | | -COPY ["DocuSign.Workspaces/*.sln", "DocuSign.Workspaces/"] |
21 | | -COPY ["DocuSign.Workspaces/DocuSign.Workspaces/DocuSign.Workspaces.csproj", "DocuSign.Workspaces/DocuSign.Workspaces/"] |
22 | | -WORKDIR /src/DocuSign.Workspaces |
23 | | -RUN dotnet restore |
24 | 12 | COPY . . |
25 | | - |
26 | | -RUN dotnet build "DocuSign.Workspaces/DocuSign.Workspaces/DocuSign.Workspaces.csproj" -c Release -o /app/build |
27 | | - |
28 | | -FROM build AS publish |
29 | | -RUN apt-get update \ |
30 | | - && apt-get install -y ca-certificates curl gnupg \ |
31 | | - && mkdir -p /etc/apt/keyrings |
32 | | -RUN curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg |
33 | | -RUN echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list |
34 | | -RUN apt-get update && apt-get install nodejs -y \ |
35 | | - && npm install -g @angular/cli |
36 | | -RUN npm update && npm config delete proxy |
37 | | - |
38 | | -RUN dotnet publish "DocuSign.Workspaces/DocuSign.Workspaces/DocuSign.Workspaces.csproj" -c Release -o /app/publish |
| 13 | +RUN dotnet restore "DocuSign.Workspaces.csproj" |
| 14 | +RUN dotnet publish "DocuSign.Workspaces.csproj" -c Release -o /app/publish --no-restore |
39 | 15 |
|
40 | 16 | FROM base AS final |
41 | 17 | WORKDIR /app |
42 | | -COPY --from=publish /app/publish . |
| 18 | +COPY --from=build /app/publish . |
43 | 19 | ENTRYPOINT ["dotnet", "DocuSign.Workspaces.dll"] |
0 commit comments