|  | @@ -8,27 +8,16 @@
 | 
	
		
			
				|  |  |  # docker buildx build --platform "linux/arm64/v8" .
 | 
	
		
			
				|  |  |  FROM --platform=${BUILDPLATFORM} mcr.microsoft.com/dotnet/sdk:7.0 as build
 | 
	
		
			
				|  |  |  ARG TARGETPLATFORM
 | 
	
		
			
				|  |  | +ARG TARGETARCH
 | 
	
		
			
				|  |  |  ARG BUILDPLATFORM
 | 
	
		
			
				|  |  |  RUN echo "I am running on $BUILDPLATFORM, building for $TARGETPLATFORM"
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  WORKDIR /source
 | 
	
		
			
				|  |  |  COPY *.csproj .
 | 
	
		
			
				|  |  | -RUN case ${TARGETPLATFORM} in \
 | 
	
		
			
				|  |  | -         "linux/amd64")  ARCH=x64  ;; \
 | 
	
		
			
				|  |  | -         "linux/arm64")  ARCH=arm64  ;; \
 | 
	
		
			
				|  |  | -         "linux/arm64/v8")  ARCH=arm64  ;; \
 | 
	
		
			
				|  |  | -         "linux/arm/v7") ARCH=arm  ;; \
 | 
	
		
			
				|  |  | -    esac \
 | 
	
		
			
				|  |  | -    && dotnet restore -r linux-${ARCH}
 | 
	
		
			
				|  |  | +RUN dotnet restore -a $TARGETARCH
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  COPY . .
 | 
	
		
			
				|  |  | -RUN  case ${TARGETPLATFORM} in \
 | 
	
		
			
				|  |  | -         "linux/amd64")  ARCH=x64  ;; \
 | 
	
		
			
				|  |  | -         "linux/arm64")  ARCH=arm64  ;; \
 | 
	
		
			
				|  |  | -         "linux/arm64/v8")  ARCH=arm64  ;; \
 | 
	
		
			
				|  |  | -         "linux/arm/v7") ARCH=arm  ;; \
 | 
	
		
			
				|  |  | -    esac \
 | 
	
		
			
				|  |  | -    && dotnet publish -c release -o /app -r linux-${ARCH} --self-contained false --no-restore
 | 
	
		
			
				|  |  | +RUN dotnet publish -c release -o /app -a $TARGETARCH --self-contained false --no-restore
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  # app image
 | 
	
		
			
				|  |  |  FROM mcr.microsoft.com/dotnet/runtime:7.0
 |