FROM golang:1.17 as builder
LABEL stage=builder

WORKDIR /server/app

COPY pdf/go.mod pdf/go.sum ./
COPY infrastructure/. ../infrastructure/
RUN go mod download
COPY ./pdf .

RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app ./cmd/app

FROM debian:buster

RUN apt-get update && apt-get install -y curl libxrender1 libjpeg62-turbo fontconfig libxtst6 xfonts-75dpi xfonts-base xz-utils fonts-thai-tlwg fonts-arphic-ukai fonts-arphic-uming fonts-ipafont-mincho fonts-ipafont-gothic fonts-unfonts-core tzdata
RUN curl "https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.buster_amd64.deb" -L -o "wkhtmltopdf.deb"
RUN dpkg -i wkhtmltopdf.deb
RUN rm -f wkhtmltopdf.deb

WORKDIR /server
COPY --from=builder /server/app .
ENTRYPOINT ["/server/app"]
CMD ["run"]
