Last active
June 15, 2022 16:59
-
-
Save jleedev/f8009c33d0af025eca35347deeaed5ee to your computer and use it in GitHub Desktop.
natural earth
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
set -eux | |
docker build . -t us-central1-docker.pkg.dev/asdf-f6040/my-docker-repo/natural_earth | |
docker push us-central1-docker.pkg.dev/asdf-f6040/my-docker-repo/natural_earth | |
CLOUDSDK_CORE_PROJECT=asdf-f6040 gcloud run deploy natural-earth --region=us-central1 --image=us-central1-docker.pkg.dev/asdf-f6040/my-docker-repo/natural_earth --quiet --allow-unauthenticated |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM debian:bullseye AS builder | |
RUN apt-get update && apt-get -y install gdal-bin build-essential git curl libsqlite3-dev zlib1g-dev | |
WORKDIR /build | |
RUN git clone https://github.com/mapbox/tippecanoe | |
RUN cd ./tippecanoe && make && make install | |
RUN curl -OL https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries_lakes.zip | |
RUN ogr2ogr ne_10m_admin_0_countries_lakes.geojson /vsizip/ne_10m_admin_0_countries_lakes.zip | |
RUN ogr2ogr countries_points.geojson -dialect sqlite -sql 'select ST_PointOnSurface(geometry),featurecla,scalerank,LABELRANK,SOVEREIGNT,SOV_A3,ADM0_DIF,LEVEL,TYPE,TLC,ADMIN,ADM0_A3,GEOU_DIF,GEOUNIT,GU_A3,SU_DIF,SUBUNIT,SU_A3,BRK_DIFF,NAME,NAME_LONG,BRK_A3,BRK_NAME,BRK_GROUP,ABBREV,POSTAL,FORMAL_EN,FORMAL_FR,NAME_CIAWF,NOTE_ADM0,NOTE_BRK,NAME_SORT,NAME_ALT,MAPCOLOR7,MAPCOLOR8,MAPCOLOR9,MAPCOLOR13,POP_EST,POP_RANK,POP_YEAR,GDP_MD,GDP_YEAR,ECONOMY,INCOME_GRP,FIPS_10,ISO_A2,ISO_A2_EH,ISO_A3,ISO_A3_EH,ISO_N3,ISO_N3_EH,UN_A3,WB_A2,WB_A3,WOE_ID,WOE_ID_EH,WOE_NOTE,ADM0_ISO,ADM0_DIFF,ADM0_TLC,ADM0_A3_US,ADM0_A3_FR,ADM0_A3_RU,ADM0_A3_ES,ADM0_A3_CN,ADM0_A3_TW,ADM0_A3_IN,ADM0_A3_NP,ADM0_A3_PK,ADM0_A3_DE,ADM0_A3_GB,ADM0_A3_BR,ADM0_A3_IL,ADM0_A3_PS,ADM0_A3_SA,ADM0_A3_EG,ADM0_A3_MA,ADM0_A3_PT,ADM0_A3_AR,ADM0_A3_JP,ADM0_A3_KO,ADM0_A3_VN,ADM0_A3_TR,ADM0_A3_ID,ADM0_A3_PL,ADM0_A3_GR,ADM0_A3_IT,ADM0_A3_NL,ADM0_A3_SE,ADM0_A3_BD,ADM0_A3_UA,ADM0_A3_UN,ADM0_A3_WB,CONTINENT,REGION_UN,SUBREGION,REGION_WB,NAME_LEN,LONG_LEN,ABBREV_LEN,TINY,HOMEPART,MIN_ZOOM,MIN_LABEL,MAX_LABEL,LABEL_X,LABEL_Y,NE_ID,WIKIDATAID,NAME_AR,NAME_BN,NAME_DE,NAME_EN,NAME_ES,NAME_FA,NAME_FR,NAME_EL,NAME_HE,NAME_HI,NAME_HU,NAME_ID,NAME_IT,NAME_JA,NAME_KO,NAME_NL,NAME_PL,NAME_PT,NAME_RU,NAME_SV,NAME_TR,NAME_UK,NAME_UR,NAME_VI,NAME_ZH,NAME_ZHT,FCLASS_ISO,TLC_DIFF,FCLASS_TLC,FCLASS_US,FCLASS_FR,FCLASS_RU,FCLASS_ES,FCLASS_CN,FCLASS_TW,FCLASS_IN,FCLASS_NP,FCLASS_PK,FCLASS_DE,FCLASS_GB,FCLASS_BR,FCLASS_IL,FCLASS_PS,FCLASS_SA,FCLASS_EG,FCLASS_MA,FCLASS_PT,FCLASS_AR,FCLASS_JP,FCLASS_KO,FCLASS_VN,FCLASS_TR,FCLASS_ID,FCLASS_PL,FCLASS_GR,FCLASS_IT,FCLASS_NL,FCLASS_SE,FCLASS_BD,FCLASS_UA from ne_10m_admin_0_countries_lakes' ne_10m_admin_0_countries_lakes.geojson | |
RUN tippecanoe -z6 -o countries.mbtiles ne_10m_admin_0_countries_lakes.geojson | |
RUN tippecanoe -r1 -z6 -o countries_points.mbtiles countries_points.geojson | |
RUN tile-join -o output.mbtiles countries.mbtiles countries_points.mbtiles | |
FROM consbio/mbtileserver | |
COPY --from=builder /build/output.mbtiles /tilesets/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" /> | |
<script src='https://unpkg.com/[email protected]/dist/maplibre-gl.js'></script> | |
<link href='https://unpkg.com/[email protected]/dist/maplibre-gl.css' rel='stylesheet' /> | |
<style> | |
#map {position: absolute; top: 0; right: 0; bottom: 0; left: 0;} | |
</style> | |
</head> | |
<body> | |
<div id="map"></div> | |
<script> | |
var map = new maplibregl.Map({ | |
container: 'map', | |
style: '/style.json', | |
center: [0, 0], | |
zoom: 1 | |
}); | |
</script> | |
</body> | |
</html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": 8, | |
"glyphs": "https://fonts.openmaptiles.org/{fontstack}/{range}.pbf", | |
"sources": { | |
"natural-earth": { | |
"type": "vector", | |
"url": "https://natural-earth-scratch-x5m3uj6fcq-uc.a.run.app/services/output" | |
} | |
}, | |
"layers": [ | |
{ | |
"id": "background", | |
"type": "background", | |
"paint": { | |
"background-color": "#D8F2FF" | |
} | |
}, | |
{ | |
"id": "coastline", | |
"type": "line", | |
"source": "natural-earth", | |
"source-layer": "ne_10m_admin_0_countries_lakes", | |
"paint": { | |
"line-blur": 0.5, | |
"line-color": "#198EC8", | |
"line-width": [ | |
"interpolate", | |
[ | |
"exponential", | |
2 | |
], | |
[ | |
"zoom" | |
], | |
0, | |
2, | |
6, | |
6, | |
14, | |
9, | |
22, | |
18 | |
] | |
}, | |
"layout": { | |
"line-cap": "round", | |
"line-join": "round" | |
} | |
}, | |
{ | |
"id": "countries", | |
"type": "fill", | |
"source": "natural-earth", | |
"source-layer": "ne_10m_admin_0_countries_lakes", | |
"paint": { | |
"fill-color": [ | |
"to-color", | |
[ | |
"at", | |
[ | |
"get", | |
"MAPCOLOR9" | |
], | |
[ | |
"literal", | |
[ | |
"#66C5CC", | |
"#F6CF71", | |
"#F89C74", | |
"#DCB0F2", | |
"#87C55F", | |
"#9EB9F3", | |
"#FE88B1", | |
"#C9DB74", | |
"#8BE0A4", | |
"#B497E7", | |
"#D3B484", | |
"#B3B3B3" | |
] | |
] | |
] | |
] | |
} | |
}, | |
{ | |
"id": "countries-boundary", | |
"type": "line", | |
"source": "natural-earth", | |
"source-layer": "ne_10m_admin_0_countries_lakes", | |
"paint": { | |
"line-color": "rgba(255, 255, 255, 1)", | |
"line-width": [ | |
"interpolate", | |
[ | |
"exponential", | |
2 | |
], | |
[ | |
"zoom" | |
], | |
1, | |
1, | |
6, | |
2, | |
14, | |
6, | |
22, | |
12 | |
], | |
"line-opacity": [ | |
"interpolate", | |
[ | |
"exponential", | |
2 | |
], | |
[ | |
"zoom" | |
], | |
3, | |
0.5, | |
6, | |
1 | |
] | |
}, | |
"layout": { | |
"line-cap": "round", | |
"line-join": "round" | |
} | |
}, | |
{ | |
"id": "countries-label", | |
"type": "symbol", | |
"source": "natural-earth", | |
"source-layer": "countries_points", | |
"paint": { | |
"text-color": "rgba(8, 37, 77, 1)", | |
"text-halo-blur": { | |
"stops": [ | |
[ | |
2, | |
0.2 | |
], | |
[ | |
6, | |
0 | |
] | |
] | |
}, | |
"text-halo-color": "rgba(255, 255, 255, 1)", | |
"text-halo-width": { | |
"stops": [ | |
[ | |
2, | |
1 | |
], | |
[ | |
6, | |
1.6 | |
] | |
] | |
} | |
}, | |
"filter": [ | |
"all" | |
], | |
"layout": { | |
"text-font": [ | |
"Open Sans Semibold" | |
], | |
"text-size": { | |
"stops": [ | |
[ | |
2, | |
10 | |
], | |
[ | |
4, | |
12 | |
], | |
[ | |
6, | |
16 | |
] | |
] | |
}, | |
"text-field": { | |
"stops": [ | |
[ | |
2, | |
"{ABBREV}" | |
], | |
[ | |
4, | |
"{NAME}" | |
] | |
] | |
}, | |
"visibility": "visible", | |
"text-max-width": 10, | |
"text-transform": { | |
"stops": [ | |
[ | |
0, | |
"uppercase" | |
], | |
[ | |
2, | |
"none" | |
] | |
] | |
} | |
} | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment