| 
					
				 | 
			
			
				@@ -1,3 +1,11 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+FROM node:18 as web-builder 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+WORKDIR /workspace 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+COPY frontend/package.json . 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+COPY frontend/package-lock.json . 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN npm install 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+COPY frontend/. . 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN npm run build 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Build the manager binary 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 FROM golang:1.20 as builder 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ARG TARGETOS 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -14,7 +22,8 @@ RUN go mod download 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Copy the go source 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 COPY cmd/main.go cmd/main.go 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 COPY api/ api/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-COPY internal/controller/ internal/controller/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+COPY internal/ internal/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+COPY pkg/ pkg/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Build 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # the GOARCH has not a default value to allow the binary be built according to the host where the command 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -28,6 +37,7 @@ RUN CGO_ENABLED=0 GOOS=${TARGETOS:-linux} GOARCH=${TARGETARCH} go build -a -o ma 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 FROM gcr.io/distroless/static:nonroot 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 WORKDIR / 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 COPY --from=builder /workspace/manager . 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+COPY --from=web-builder /workspace/build/. ./frontend/build/. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 USER 65532:65532 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ENTRYPOINT ["/manager"] 
			 |