FROM golang:1.21.1 as build

LABEL author="Victor Lacasse-Beaudoin <vlbeaudoin@agecem.org>"

WORKDIR /go/src/app

COPY go.mod go.sum main.go ./

ADD public/ public/

ADD cmd/ cmd/

ADD api/ api/

ADD api_handlers/ api_handlers/

ADD apiresponse/ apiresponse/

ADD config/ config/

ADD media/ media/

ADD models/ models/

ADD templates/ templates/

ADD web_handlers/ web_handlers/

Add webresponse/ webresponse/

RUN CGO_ENABLED=0 go build -a -installsuffix cgo -o agecem-org .

# Alpine

FROM alpine:3.18.3

WORKDIR /app

COPY --from=build /go/src/app/agecem-org /usr/bin/agecem-org

CMD ["agecem-org", "server"]