FROM golang:1.16.0-buster as builder

WORKDIR /app
RUN go get github.com/docker/docker/api/types github.com/docker/docker/api/types/container github.com/docker/docker/client

#RUN go env -w GO111MODULE=auto 
COPY worker.go /app/worker.go
RUN go mod init worker
RUN go get github.com/docker/docker/api/types && \
	go get github.com/docker/docker/api/types/container && \
	go get github.com/docker/docker/client && \
	go get github.com/gorilla/mux && \
	go get github.com/patrickmn/go-cache && \
	go get github.com/frikky/shuffle-shared

RUN go build
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o worker .

## ALPINE IMAGE
FROM alpine:3.12

ENV SHUFFLE_BASE_IMAGE_REGISTRY=docker.io
ENV SHUFFLE_BASE_IMAGE_NAME=frikky/shuffle
ENV SHUFFLE_BASE_IMAGE_TAG_SUFFIX=0.8.5

RUN apk add --no-cache bash
COPY --from=builder /app/ /

CMD ["./worker"]
