simple geo ip server

This commit is contained in:
Lectom C Han
2025-12-05 17:40:46 +09:00
commit 5d0221f67d
12 changed files with 418 additions and 0 deletions

26
Dockerfile Normal file
View File

@@ -0,0 +1,26 @@
FROM golang:1.25.5-trixie AS builder
ENV GOCACHE=/tmp/go-build \
GOPROXY=https://proxy.golang.org,direct
WORKDIR /src
COPY go.mod ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 go build -o /bin/geoip ./cmd/server
FROM debian:trixie-slim
RUN useradd --create-home --shell /usr/sbin/nologin appuser
WORKDIR /app
COPY --from=builder /bin/geoip /usr/local/bin/geoip
COPY GeoLite2-City.mmdb /data/GeoLite2-City.mmdb
ENV GEOIP_DB_PATH=/data/GeoLite2-City.mmdb
USER appuser
EXPOSE 8080
CMD ["geoip"]