فهرست منبع

reverted dockerfile

Tim Jones 1 ماه پیش
والد
کامیت
6845f611ae
1فایلهای تغییر یافته به همراه7 افزوده شده و 32 حذف شده
  1. 7 32
      RackPeek.Web/Dockerfile

+ 7 - 32
RackPeek.Web/Dockerfile

@@ -7,50 +7,25 @@ EXPOSE 8081
 FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
 ARG BUILD_CONFIGURATION=Release
 WORKDIR /src
-
 COPY ["RackPeek.Web/RackPeek.Web.csproj", "RackPeek.Web/"]
 COPY ["RackPeek.Domain/RackPeek.Domain.csproj", "RackPeek.Domain/"]
 COPY ["Shared.Rcl/Shared.Rcl.csproj", "Shared.Rcl/"]
 COPY ["RackPeek/RackPeek.csproj", "RackPeek/"]
-
 RUN dotnet restore "RackPeek.Web/RackPeek.Web.csproj"
-
 COPY . .
-
-# Build Web
 WORKDIR "/src/RackPeek.Web"
-RUN dotnet publish "./RackPeek.Web.csproj" -c $BUILD_CONFIGURATION -o /app/web-publish /p:UseAppHost=false
+RUN dotnet build "./RackPeek.Web.csproj" -c $BUILD_CONFIGURATION -o /app/build
 
-# Build CLI (framework dependent, small)
-WORKDIR "/src/RackPeek"
-RUN dotnet publish "./RackPeek.csproj" -c $BUILD_CONFIGURATION -o /app/cli-publish /p:UseAppHost=false
-FROM base AS final
+FROM build AS publish
+ARG BUILD_CONFIGURATION=Release
+RUN dotnet publish "./RackPeek.Web.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
 
+FROM base AS final
 WORKDIR /app
 
-USER root
-
-# Create shared config dir
 RUN mkdir -p /app/config && chown -R $APP_UID /app/config
-VOLUME ["/app/config"]
-
-# Copy Web app
-COPY --from=build /app/web-publish .
-
-# Copy CLI publish output
-COPY --from=build /app/cli-publish /usr/local/bin/rpk-dir
-
-# If AppHost exists, use it. Otherwise create wrapper.
-RUN if [ -f /usr/local/bin/rpk-dir/RackPeek ]; then \
-        mv /usr/local/bin/rpk-dir/RackPeek /usr/local/bin/rpk; \
-    else \
-        echo '#!/bin/sh\nexec dotnet /usr/local/bin/rpk-dir/RackPeek.dll "$@"' > /usr/local/bin/rpk && \
-        chmod +x /usr/local/bin/rpk; \
-    fi
 
-# Set environment variable so CLI uses shared config
-ENV RPK_YAML_DIR=/app/config
-
-USER $APP_UID
+VOLUME ["/app/config"]
 
+COPY --from=publish /app/publish .
 ENTRYPOINT ["dotnet", "RackPeek.Web.dll"]