# Copyright The OpenTelemetry Authors # SPDX-License-Identifier: Apache-2.0 FROM --platform=${BUILDPLATFORM} mcr.microsoft.com/dotnet/sdk:8.0 AS builder ARG TARGETARCH ARG BUILD_CONFIGURATION=Release WORKDIR /src COPY ["/src/accounting/", "Accounting/"] COPY ["/pb/demo.proto", "Accounting/src/protos/demo.proto"] RUN dotnet restore "./Accounting/Accounting.csproj" -r linux-$TARGETARCH WORKDIR "/src/Accounting" RUN dotnet build "./Accounting.csproj" -r linux-$TARGETARCH -c $BUILD_CONFIGURATION -o /app/build # ----------------------------------------------------------------------------- FROM builder AS publish ARG TARGETARCH ARG BUILD_CONFIGURATION=Release RUN dotnet publish "./Accounting.csproj" -r linux-$TARGETARCH -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false # ----------------------------------------------------------------------------- FROM mcr.microsoft.com/dotnet/aspnet:8.0 USER app WORKDIR /app COPY --from=publish /app/publish . USER root RUN mkdir -p "/var/log/opentelemetry/dotnet" RUN chown app "/var/log/opentelemetry/dotnet" RUN chown app "/app/instrument.sh" USER app ENV OTEL_DOTNET_AUTO_TRACES_ADDITIONAL_SOURCES=Accounting.Consumer ENTRYPOINT ["./instrument.sh", "dotnet", "Accounting.dll"]