FROM golang:1.18-alpine

ARG app_env=production
ARG commit_hash
LABEL maintainer="shenjing.zhao@pingcap.com"
LABEL commit_hash="${commit_hash}"
LABEL app="pchub"
LABEL component="apiserver"
ENV GIN_MODE="release"
WORKDIR /apps
COPY go.mod ./
COPY go.sum ./
RUN go mod tidy

COPY . ./

RUN go build -o . /apps/cmd/pchub-apiserver

VOLUME [ "/apps/config", "/apps/logs" ]
EXPOSE 8867
ENTRYPOINT /apps/pchub-apiserver -c=/apps/config/config-prod.yaml
