From e2e71c7a4688bafe863110beb59cea01d20d279d Mon Sep 17 00:00:00 2001 From: wiz Date: Sun, 19 Mar 2023 17:33:51 +0900 Subject: [PATCH] Add Maxmind GeoIP Lite download to Docker build --- backend/src/__tests__/config.test.ts | 8 ++++---- docker/README.md | 10 +++++----- docker/backend/Dockerfile | 1 + docker/backend/mempool-config.json | 2 +- docker/backend/start.sh | 8 ++++---- docker/init.sh | 5 +++++ 6 files changed, 20 insertions(+), 14 deletions(-) diff --git a/backend/src/__tests__/config.test.ts b/backend/src/__tests__/config.test.ts index 8b7ebc9ce..72533829b 100644 --- a/backend/src/__tests__/config.test.ts +++ b/backend/src/__tests__/config.test.ts @@ -108,10 +108,10 @@ describe('Mempool Backend Config', () => { }); expect(config.MAXMIND).toStrictEqual({ - ENABLED: false, - GEOLITE2_CITY: '/usr/local/share/GeoIP/GeoLite2-City.mmdb', - GEOLITE2_ASN: '/usr/local/share/GeoIP/GeoLite2-ASN.mmdb', - GEOIP2_ISP: '/usr/local/share/GeoIP/GeoIP2-ISP.mmdb' + ENABLED: true, + GEOLITE2_CITY: './backend/GeoIP/GeoLite2-City.mmdb', + GEOLITE2_ASN: './backend/GeoIP/GeoLite2-ASN.mmdb', + GEOIP2_ISP: '' }); }); }); diff --git a/docker/README.md b/docker/README.md index 34f130aae..e6f6a3c07 100644 --- a/docker/README.md +++ b/docker/README.md @@ -438,7 +438,7 @@ Corresponding `docker-compose.yml` overrides: `mempool-config.json`: ```json "MAXMIND": { - "ENABLED": false, + "ENABLED": true, "GEOLITE2_CITY": "/usr/local/share/GeoIP/GeoLite2-City.mmdb", "GEOLITE2_ASN": "/usr/local/share/GeoIP/GeoLite2-ASN.mmdb", "GEOIP2_ISP": "/usr/local/share/GeoIP/GeoIP2-ISP.mmdb" @@ -449,9 +449,9 @@ Corresponding `docker-compose.yml` overrides: ```yaml api: environment: - MAXMIND_ENABLED: "", - MAXMIND_GEOLITE2_CITY: "/usr/local/share/GeoIP/GeoLite2-City.mmdb", - MAXMIND_GEOLITE2_ASN": "/usr/local/share/GeoIP/GeoLite2-ASN.mmdb", - MAXMIND_GEOIP2_ISP": "/usr/local/share/GeoIP/GeoIP2-ISP.mmdb" + MAXMIND_ENABLED: true, + MAXMIND_GEOLITE2_CITY: "./backend/GeoIP/GeoLite2-City.mmdb", + MAXMIND_GEOLITE2_ASN": "./backend/GeoIP/GeoLite2-ASN.mmdb", + MAXMIND_GEOIP2_ISP": "./backend/GeoIP/GeoIP2-ISP.mmdb" ... ``` diff --git a/docker/backend/Dockerfile b/docker/backend/Dockerfile index 9be457bb2..fd5044c0f 100644 --- a/docker/backend/Dockerfile +++ b/docker/backend/Dockerfile @@ -17,6 +17,7 @@ WORKDIR /backend RUN chown 1000:1000 ./ COPY --from=builder --chown=1000:1000 /build/package ./package/ +COPY --from=builder --chown=1000:1000 /build/GeoIP ./GeoIP/ COPY --from=builder --chown=1000:1000 /build/mempool-config.json /build/start.sh /build/wait-for-it.sh ./ USER 1000 diff --git a/docker/backend/mempool-config.json b/docker/backend/mempool-config.json index 0099a650d..c1f187437 100644 --- a/docker/backend/mempool-config.json +++ b/docker/backend/mempool-config.json @@ -114,4 +114,4 @@ "GEOLITE2_ASN": "__MAXMIND_GEOLITE2_ASN__", "GEOIP2_ISP": "__MAXMIND_GEOIP2_ISP__" } -} \ No newline at end of file +} diff --git a/docker/backend/start.sh b/docker/backend/start.sh index d0e58470b..11c638735 100755 --- a/docker/backend/start.sh +++ b/docker/backend/start.sh @@ -112,10 +112,10 @@ __LND_REST_API_URL__=${LND_REST_API_URL:="https://localhost:8080"} __CLIGHTNING_SOCKET__=${CLIGHTNING_SOCKET:=""} # MAXMIND -__MAXMIND_ENABLED__=${MAXMIND_ENABLED:=false} -__MAXMIND_GEOLITE2_CITY__=${MAXMIND_GEOLITE2_CITY:="/usr/local/share/GeoIP/GeoLite2-City.mmdb"} -__MAXMIND_GEOLITE2_ASN__=${MAXMIND_GEOLITE2_ASN:="/usr/local/share/GeoIP/GeoLite2-ASN.mmdb"} -__MAXMIND_GEOIP2_ISP__=${MAXMIND_GEOIP2_IS:="/usr/local/share/GeoIP/GeoIP2-ISP.mmdb"} +__MAXMIND_ENABLED__=${MAXMIND_ENABLED:=true} +__MAXMIND_GEOLITE2_CITY__=${MAXMIND_GEOLITE2_CITY:="./backend/GeoIP/GeoLite2-City.mmdb"} +__MAXMIND_GEOLITE2_ASN__=${MAXMIND_GEOLITE2_ASN:="./backend/GeoIP/GeoLite2-ASN.mmdb"} +__MAXMIND_GEOIP2_ISP__=${MAXMIND_GEOIP2_ISP:=""} mkdir -p "${__MEMPOOL_CACHE_DIR__}" diff --git a/docker/init.sh b/docker/init.sh index 4eb06f0c1..ee9ac9542 100755 --- a/docker/init.sh +++ b/docker/init.sh @@ -3,6 +3,11 @@ #backend cp ./docker/backend/* ./backend/ +#geoip-data +mkdir -p ./backend/GeoIP/ +wget -O ./backend/GeoIP/GeoLite2-City.mmdb https://raw.githubusercontent.com/mempool/geoip-data/master/GeoLite2-City.mmdb +wget -O ./backend/GeoIP/GeoLite2-ASN.mmdb https://raw.githubusercontent.com/mempool/geoip-data/master/GeoLite2-ASN.mmdb + #frontend localhostIP="127.0.0.1" cp ./docker/frontend/* ./frontend