FROM golang:alpine AS build RUN apk add --no-cache gcc musl-dev WORKDIR /src COPY go.mod go.sum ./ RUN go mod download COPY . . RUN CGO_ENABLED=1 go build -ldflags="-s -w" -o /misaki ./cmd/ RUN CGO_ENABLED=1 go build -ldflags="-s -w" -o /misaki-cli ./cmd/cli/ FROM alpine:3.19 RUN apk add --no-cache ca-certificates WORKDIR /app COPY --from=build /misaki . COPY --from=build /misaki-cli . COPY tmpl/ tmpl/ COPY static/ static/ RUN mkdir /data VOLUME /data EXPOSE 8080 CMD ["/app/misaki"]