22 lines
		
	
	
		
			542 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			542 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM mirror.gcr.io/library/golang:1.21-alpine as build
 | |
| RUN apk add ca-certificates
 | |
| 
 | |
| WORKDIR /godoor
 | |
| 
 | |
| # pre-copy/cache go.mod for pre-downloading dependencies and only redownloading them in subsequent builds if they change
 | |
| COPY go.mod go.sum ./
 | |
| RUN go mod download && go mod verify
 | |
| 
 | |
| 
 | |
| COPY . .
 | |
| 
 | |
| ENV GOBUILDLDFLAGS="-linkmode 'external' -extldflags '-static'"
 | |
| RUN go build -tags netgo .
 | |
| 
 | |
| FROM scratch
 | |
| WORKDIR /
 | |
| COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
 | |
| COPY --from=build /godoor/godoor /godoor
 | |
| 
 | |
| ENTRYPOINT ["/godoor"]
 |