20 lines
		
	
	
		
			718 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			718 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
| # Build the go application into a binary
 | |
| FROM golang:alpine as builder
 | |
| WORKDIR /app
 | |
| ADD . ./
 | |
| RUN CGO_ENABLED=0 GOOS=linux go build -mod vendor -a -installsuffix cgo -o gatus .
 | |
| RUN apk --update add ca-certificates
 | |
| 
 | |
| # Run Tests inside docker image if you don't have a configured go environment
 | |
| #RUN apk update && apk add --virtual build-dependencies build-base gcc
 | |
| #RUN go test ./... -mod vendor
 | |
| 
 | |
| # Run the binary on an empty container
 | |
| FROM scratch
 | |
| COPY --from=builder /app/gatus .
 | |
| COPY --from=builder /app/config.yaml ./config/config.yaml
 | |
| COPY --from=builder /app/static static/
 | |
| COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
 | |
| ENV PORT=8080
 | |
| EXPOSE ${PORT}
 | |
| ENTRYPOINT ["/gatus"] |