immich-to-slideshow/Dockerfile

30 lines
945 B
Docker

# Stage 1: Build Stage
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
# restore
COPY ["src/ImmichToSlideshow/ImmichToSlideshow.csproj", "ImmichToSlideshow/"]
RUN dotnet restore 'ImmichToSlideshow/ImmichToSlideshow.csproj'
# build
COPY ["src/ImmichToSlideshow", "ImmichToSlideshow/"]
WORKDIR /src/ImmichToSlideshow
RUN dotnet build 'ImmichToSlideshow.csproj' -c Release -o /app/build
# Stage 2: Publish Stage
FROM build AS publish
RUN dotnet publish 'ImmichToSlideshow.csproj' -c Release -o /app/publish
# Stage 3: Run Stage
FROM mcr.microsoft.com/dotnet/aspnet:8.0
ENV ASPNETCORE_HTTP_PORTS=5001
EXPOSE 5001
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT [ "dotnet", "ImmichToSlideshow.dll" ]
# docker build -t sprint-console-001 .
# docker images ls | grep -i 001
# docker run -p 5001:5001 --name sprint-console-api-001 sprint-console-001
# docker run -p 5001:5001 --name sprint-console-api-001 sprint-console-001