rd13_tile_server/docker-compose.build.yml

82 lines
4.3 KiB
YAML
Raw Normal View History

# Planetiler Build Vektor-Tiles für höhere Zoom-Level
#
# LÄUFT AUF DEM HOST-RECHNER (nicht auf dem Server).
# Voraussetzung: Docker Desktop (macOS/Windows) oder Docker Engine (Linux)
#
# ══════════════════════════════════════════════════════════════════════
# DISK-ANFORDERUNGEN (auf dem Host-Rechner)
# ══════════════════════════════════════════════════════════════════════
#
# AREA=germany MAX_ZOOM=16: ~30 GB temp + ~12 GB output = ~50 GB frei
# AREA=europe MAX_ZOOM=16: ~200 GB temp + ~80 GB output = ~350 GB frei
# AREA=planet MAX_ZOOM=15: ~200 GB temp + ~80 GB output = ~350 GB frei
# AREA=planet MAX_ZOOM=16: ~500 GB temp + ~300 GB output = ~900 GB frei
#
# ══════════════════════════════════════════════════════════════════════
# SCHRITT 1: Build starten
# ══════════════════════════════════════════════════════════════════════
#
# # Germany z0-16 (empfohlen als Einstieg)
# AREA=germany MAX_ZOOM=16 RAM=8g docker compose -f docker-compose.build.yml up
#
# # Planet z0-15 (~80 GB Output, ~8h, 28 GB RAM, ~350 GB Temp+Output Disk)
# AREA=planet MAX_ZOOM=15 RAM=28g BUILD_CPUS=12 BUILD_MEM=30g \
# docker compose -f docker-compose.build.yml up
#
# # Planet z0-16 (~300 GB Output, ~15h, 28 GB RAM, ~900 GB Temp+Output Disk)
# AREA=planet MAX_ZOOM=16 RAM=28g BUILD_CPUS=12 BUILD_MEM=30g \
# docker compose -f docker-compose.build.yml up
#
# Status verfolgen (zweites Terminal):
# docker compose -f docker-compose.build.yml logs -f
#
# ══════════════════════════════════════════════════════════════════════
# SCHRITT 2: Ergebnis auf Server übertragen
# ══════════════════════════════════════════════════════════════════════
#
# rsync -avh --progress --partial \
# ./build/output/<AREA>.mbtiles \
# rd13server@192.168.178.6:/mnt/services-data/rd13_tile_server/data/osm-<AREA>.mbtiles
#
# ══════════════════════════════════════════════════════════════════════
# SCHRITT 3: Martin auf dem Server neu starten
# ══════════════════════════════════════════════════════════════════════
#
# ssh rd13server@192.168.178.6 \
# "cd /mnt/services-data/rd13_tile_server && docker compose restart martin"
#
# # Neue Source prüfen:
# curl https://tiles.rd13server.de/catalog | python3 -m json.tool | grep -i area
services:
planetiler-build:
image: ghcr.io/onthegomap/planetiler:latest
container_name: rd13_planetiler_build
volumes:
# Output: fertige MBTiles
- ./build/output:/output
# Source-Cache: OSM-PBF wird hier gecacht (verhindert Re-Download bei Neustart)
- ./build/sources:/data/sources
# Temp-Basisverzeichnis mit getrennten Unterordnern fuer work/reuse
- ./build/tmp:/data/tmp
environment:
- JAVA_TOOL_OPTIONS=-Xmx28g -Xms2g -XX:+UseG1GC -XX:MaxGCPauseMillis=200
command:
- "--download"
- "--area=europe"
- "--output=/output/europe.mbtiles"
- "--maxzoom=16"
- "--nodemap-type=sortedtable"
- "--tmpdir=/data/tmp/work"
- "--temp_nodes=/data/tmp/work/node.db"
- "--temp_multipolygons=/data/tmp/work/multipolygon.db"
- "--temp_features=/data/tmp/reuse/feature.db"
- "--reuse_featuredb=true"
- "--force"
restart: "no"
deploy:
resources:
limits:
cpus: "14"
memory: "32GB"