sledgemapper/Dockerfile
Michele Scandura d65cd7d69a docker stuff
2020-11-24 15:25:07 +00:00

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"]