mirror of
https://github.com/alexgo-io/gaze-indexer.git
synced 2026-01-12 08:34:28 +08:00
* build: add cache mount for go modules * doc(docker): update TZ description * build: use entrypoint instead cmd exec * build: add dockerignore * build: add modules dir to image for migration command * build: update dockerignore * doc: fix typo Co-authored-by: gazenw <163862510+gazenw@users.noreply.github.com> --------- Co-authored-by: gazenw <163862510+gazenw@users.noreply.github.com>
29 lines
573 B
Docker
29 lines
573 B
Docker
FROM golang:1.22 as builder
|
|
|
|
WORKDIR /app
|
|
|
|
COPY go.mod go.sum ./
|
|
RUN --mount=type=cache,target=/go/pkg/mod/ go mod download
|
|
|
|
COPY ./ ./
|
|
|
|
ENV GOOS=linux
|
|
ENV CGO_ENABLED=0
|
|
|
|
RUN --mount=type=cache,target=/go/pkg/mod/ \
|
|
go build -o main ./main.go
|
|
|
|
FROM alpine:latest
|
|
|
|
WORKDIR /app
|
|
|
|
RUN apk --no-cache add ca-certificates tzdata
|
|
|
|
COPY --from=builder /app/main .
|
|
COPY --from=builder /app/modules ./modules
|
|
|
|
# You can set TZ identifier to change the timezone, See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
|
|
# ENV TZ=US/Central
|
|
|
|
ENTRYPOINT ["/app/main"]
|