28 lines
		
	
	
		
			617 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			617 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
# === BUILD STAGE === #
 | 
						|
FROM golang:1.20-alpine3.16 as build
 | 
						|
 | 
						|
WORKDIR /srv/app
 | 
						|
ENV CGO_ENABLED=0 GOOS=linux GOARCH=amd64
 | 
						|
 | 
						|
COPY go.mod go.sum ./
 | 
						|
RUN go mod download
 | 
						|
 | 
						|
COPY . .
 | 
						|
RUN go test -v ./... && go build -ldflags="-w -s" -o build
 | 
						|
 | 
						|
# === RUN STAGE === #
 | 
						|
FROM registry.odit.services/hub/library/alpine:3.16 as run
 | 
						|
 | 
						|
RUN apk update \
 | 
						|
        && apk upgrade \
 | 
						|
        && apk add --no-cache ca-certificates \
 | 
						|
        && update-ca-certificates \
 | 
						|
        && rm -rf /var/cache/apk/*
 | 
						|
 | 
						|
WORKDIR /srv/app
 | 
						|
COPY --from=build /srv/app/build /srv/app/build
 | 
						|
 | 
						|
ENV LISTEN_ADDRESS=0.0.0.0:8080 GIN_MODE=release
 | 
						|
 | 
						|
CMD ["/srv/app/build"]
 |