87 lines
2.8 KiB
Docker
87 lines
2.8 KiB
Docker
# https://hub.docker.com/_/microsoft-dotnet-core
|
|
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
|
|
|
|
WORKDIR /installer
|
|
COPY ./dotnet-install.sh ./dotnet-install.sh
|
|
RUN chmod +x dotnet-install.sh
|
|
RUN ./dotnet-install.sh --channel 3.1
|
|
# # Install .NET CLI dependencies
|
|
# RUN apt-get update \
|
|
# && apt-get install -y --no-install-recommends \
|
|
# libc6 \
|
|
# libgcc1 \
|
|
# libgssapi-krb5-2 \
|
|
# libicu60 \
|
|
# libssl1.1 \
|
|
# libstdc++6 \
|
|
# zlib1g \
|
|
# && rm -rf /var/lib/apt/lists/*
|
|
|
|
# # Install .NET Core SDK
|
|
# RUN dotnet_sdk_version=3.1.404 \
|
|
# && curl -SL --output dotnet.tar.gz https://dotnetcli.azureedge.net/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz \
|
|
# && dotnet_sha512='94d8eca3b4e2e6c36135794330ab196c621aee8392c2545a19a991222e804027f300d8efd152e9e4893c4c610d6be8eef195e30e6f6675285755df1ea49d3605' \
|
|
# && echo "$dotnet_sha512 dotnet.tar.gz" | sha512sum -c - \
|
|
# && mkdir -p /usr/share/dotnet \
|
|
# && tar -ozxf dotnet.tar.gz -C /usr/share/dotnet \
|
|
# && rm dotnet.tar.gz \
|
|
# && ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet \
|
|
# # Trigger first run experience by running arbitrary cmd
|
|
# && dotnet help
|
|
WORKDIR /src
|
|
|
|
# copy csproj and restore as distinct layers
|
|
#COPY *.sln .
|
|
# COPY SignalRChat/*.csproj ./aspnetapp/
|
|
# WORKDIR /source/aspnetapp
|
|
# RUN dotnet restore
|
|
COPY Sledgemapper.Api/*.csproj ./Sledgemapper.Api/
|
|
COPY Sledgemapper.Shared/*.csproj ./Sledgemapper.Shared/
|
|
|
|
WORKDIR /src/Sledgemapper.Api
|
|
RUN dotnet restore
|
|
|
|
WORKDIR /src/Sledgemapper.Shared
|
|
RUN dotnet restore
|
|
|
|
# copy everything else and build app
|
|
WORKDIR /src
|
|
COPY Sledgemapper.Api/. ./Sledgemapper.Api/
|
|
COPY Sledgemapper.Shared/. ./Sledgemapper.Shared/
|
|
WORKDIR /src/Sledgemapper.Api
|
|
RUN dotnet publish -c release -o /app --no-restore
|
|
|
|
# final stage/image
|
|
FROM mcr.microsoft.com/dotnet/aspnet:5.0
|
|
WORKDIR /app
|
|
COPY --from=build /app ./
|
|
ENTRYPOINT ["dotnet", "/app/Sledgemapper.Api.dll"]
|
|
|
|
|
|
# # https://hub.docker.com/_/microsoft-dotnet-core
|
|
# FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
|
|
|
|
# # copy csproj and restore as distinct layers
|
|
# #COPY *.sln .
|
|
# WORKDIR /source
|
|
# COPY Sledgemapper.Api/*.csproj ./Sledgemapper.Api/
|
|
# WORKDIR /source/Sledgemapper.Api
|
|
# RUN dotnet restore
|
|
|
|
# WORKDIR /source
|
|
# COPY Sledgemapper.Shared/*.csproj ./Sledgemapper.Shared/
|
|
# WORKDIR /source/Sledgemapper.Shared
|
|
# RUN dotnet restore
|
|
|
|
# # copy everything else and build app
|
|
# WORKDIR /source
|
|
# COPY Sledgemapper.Api/. ./Sledgemapper.Api/
|
|
# COPY Sledgemapper.Shared/. ./Sledgemapper.Shared/
|
|
# WORKDIR /source/Sledgemapper.Api
|
|
# RUN dotnet publish -c release -o /app --no-restore
|
|
|
|
# # final stage/image
|
|
# FROM mcr.microsoft.com/dotnet/aspnet:5.0
|
|
# WORKDIR /app
|
|
# COPY --from=build /app ./
|
|
# ENTRYPOINT ["dotnet", "Sledgemapper.Api.dll"]
|