28 lines
616 B
Docker
28 lines
616 B
Docker
# Build context is the repo root: docker build -f build/package/Dockerfile .
|
|
FROM golang:1.26.1-alpine AS builder
|
|
|
|
WORKDIR /src
|
|
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
|
|
COPY . .
|
|
RUN CGO_ENABLED=0 GOOS=linux go build -trimpath -o /out/gis ./cmd/gis
|
|
|
|
FROM alpine:3.20
|
|
|
|
# gdal-tools provides gdal_translate / gdalinfo for raster COG conversion and
|
|
# ogr2ogr for extracting vector feature geometry (worker).
|
|
RUN apk add --no-cache ca-certificates tzdata gdal-tools \
|
|
&& adduser -D -u 10001 app
|
|
|
|
WORKDIR /app
|
|
COPY --from=builder /out/gis /usr/local/bin/gis
|
|
|
|
USER app
|
|
|
|
EXPOSE 8080
|
|
|
|
ENTRYPOINT ["gis"]
|
|
CMD ["serve"]
|