From 602d35760f989a43a3d7f9306e0b1bfd607f37a0 Mon Sep 17 00:00:00 2001 From: Frank Elsinga Date: Tue, 26 Nov 2024 13:03:36 +0100 Subject: [PATCH] added valhalla settings --- docker-compose.local.yml | 2 +- docker-compose.yml | 1 + map/download.sh | 3 + map/valhalla.json | 294 +++++++++++++++++++++++++++++++++++++++ 4 files changed, 299 insertions(+), 1 deletion(-) create mode 100644 map/valhalla.json diff --git a/docker-compose.local.yml b/docker-compose.local.yml index d18e7b80a..cf0ee8db3 100644 --- a/docker-compose.local.yml +++ b/docker-compose.local.yml @@ -94,11 +94,11 @@ services: - ./map/data/:/map/data/:rw - ./map/gtfs_feeds/:/map/gtfs_feeds/:rw - ./map/download.sh:/map/download.sh:ro + - ./map/valhalla.json:/map/valhalla.json:ro valhalla-build: image: ghcr.io/gis-ops/docker-valhalla/valhalla:latest volumes: - ./map/data/:/custom_files:rw - - ./map/download.sh:/local/bin:ro - ./map/gtfs_feeds:/gtfs_feeds:rw environment: TZ: Europe/Berlin diff --git a/docker-compose.yml b/docker-compose.yml index a0a4817d7..19177f2ef 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -171,6 +171,7 @@ services: - ./map/data/:/map/data/:rw - ./map/gtfs_feeds/:/map/gtfs_feeds/:rw - ./map/download.sh:/map/download.sh:ro + - ./map/valhalla.json:/map/valhalla.json:ro valhalla-build: image: ghcr.io/gis-ops/docker-valhalla/valhalla:latest volumes: diff --git a/map/download.sh b/map/download.sh index 64b6d9aae..79adef3e4 100755 --- a/map/download.sh +++ b/map/download.sh @@ -34,3 +34,6 @@ wget --tries=5 https://www.opendata-oepnv.de/dataset/17065229-c3fd-46d7-84a9-aae unzip -q -d mvv mvv.zip rm mvv.zip cd .. || exit 1 + +echo -- copy valhalla config -- +cp --force valhalla.json data/ \ No newline at end of file diff --git a/map/valhalla.json b/map/valhalla.json new file mode 100644 index 000000000..221101ff2 --- /dev/null +++ b/map/valhalla.json @@ -0,0 +1,294 @@ +{ + "additional_data": { + "elevation": "/custom_files/elevation_data" + }, + "httpd": { + "service": { + "drain_seconds": 28, + "interrupt": "ipc:///tmp/interrupt", + "listen": "tcp://*:8002", + "loopback": "ipc:///tmp/loopback", + "shutdown_seconds": 1, + "timeout_seconds": -1 + } + }, + "loki": { + "actions": [ + "locate", + "route", + "height", + "sources_to_targets", + "optimized_route", + "isochrone", + "trace_route", + "trace_attributes", + "transit_available", + "expansion", + "centroid", + "status" + ], + "logging": { + "color": true, + "file_name": "path_to_some_file.log", + "long_request": 100.0, + "type": "std_out" + }, + "service": { + "proxy": "ipc:///tmp/loki" + }, + "service_defaults": { + "heading_tolerance": 60, + "minimum_reachability": 50, + "node_snap_tolerance": 5, + "radius": 0, + "search_cutoff": 35000, + "street_side_max_distance": 1000, + "street_side_tolerance": 5 + }, + "use_connectivity": true + }, + "meili": { + "auto": { + "search_radius": 50, + "turn_penalty_factor": 200 + }, + "bicycle": { + "turn_penalty_factor": 140 + }, + "customizable": [ + "mode", + "search_radius", + "turn_penalty_factor", + "gps_accuracy", + "interpolation_distance", + "sigma_z", + "beta", + "max_route_distance_factor", + "max_route_time_factor" + ], + "default": { + "beta": 3, + "breakage_distance": 2000, + "geometry": false, + "gps_accuracy": 5.0, + "interpolation_distance": 10, + "max_route_distance_factor": 5, + "max_route_time_factor": 5, + "max_search_radius": 100, + "route": true, + "search_radius": 50, + "sigma_z": 4.07, + "turn_penalty_factor": 0 + }, + "grid": { + "cache_size": 100240, + "size": 500 + }, + "logging": { + "color": true, + "file_name": "path_to_some_file.log", + "type": "std_out" + }, + "mode": "auto", + "multimodal": { + "turn_penalty_factor": 70 + }, + "pedestrian": { + "search_radius": 50, + "turn_penalty_factor": 100 + }, + "service": { + "proxy": "ipc:///tmp/meili" + }, + "verbose": false + }, + "mjolnir": { + "admin": "/custom_files/admin_data/admins.sqlite", + "concurrency": 8, + "data_processing": { + "allow_alt_name": false, + "apply_country_overrides": true, + "grid_divisions_within_tile": 32, + "infer_internal_intersections": true, + "infer_turn_channels": true, + "scan_tar": false, + "use_admin_db": true, + "use_direction_on_ways": false, + "use_rest_area": false, + "use_urban_tag": false + }, + "global_synchronized_cache": false, + "hierarchy": true, + "id_table_size": 1300000000, + "import_bike_share_stations": false, + "include_bicycle": true, + "include_construction": false, + "include_driveways": true, + "include_driving": true, + "include_pedestrian": true, + "include_platforms": false, + "landmarks": "/data/valhalla/landmarks.sqlite", + "logging": { + "color": true, + "file_name": "path_to_some_file.log", + "type": "std_out" + }, + "lru_mem_cache_hard_control": false, + "max_cache_size": 1000000000, + "max_concurrent_reader_users": 1, + "reclassify_links": true, + "shortcuts": true, + "tile_dir": "/custom_files/valhalla_tiles", + "tile_extract": "/custom_files/valhalla_tiles.tar", + "timezone": "/custom_files/timezone_data/timezones.sqlite", + "traffic_extract": "/custom_files/traffic.tar", + "transit_dir": "/custom_files/transit_tiles", + "transit_feeds_dir": "/gtfs_feeds", + "transit_pbf_limit": 20000, + "use_lru_mem_cache": false, + "use_simple_mem_cache": false + }, + "odin": { + "logging": { + "color": true, + "file_name": "path_to_some_file.log", + "type": "std_out" + }, + "markup_formatter": { + "markup_enabled": false, + "phoneme_format": " (phoneme>//)" + }, + "service": { + "proxy": "ipc:///tmp/odin" + } + }, + "service_limits": { + "auto": { + "max_distance": 5000000.0, + "max_locations": 20, + "max_matrix_distance": 400000.0, + "max_matrix_location_pairs": 2500 + }, + "bicycle": { + "max_distance": 500000.0, + "max_locations": 50, + "max_matrix_distance": 200000.0, + "max_matrix_location_pairs": 2500 + }, + "bikeshare": { + "max_distance": 500000.0, + "max_locations": 50, + "max_matrix_distance": 200000.0, + "max_matrix_location_pairs": 2500 + }, + "bus": { + "max_distance": 5000000.0, + "max_locations": 50, + "max_matrix_distance": 400000.0, + "max_matrix_location_pairs": 2500 + }, + "centroid": { + "max_distance": 200000.0, + "max_locations": 5 + }, + "isochrone": { + "max_contours": 4, + "max_distance": 25000.0, + "max_distance_contour": 200, + "max_locations": 1, + "max_time_contour": 120 + }, + "max_alternates": 2, + "max_distance_disable_hierarchy_culling": 0, + "max_exclude_locations": 50, + "max_exclude_polygons_length": 10000, + "max_radius": 200, + "max_reachability": 100, + "max_timedep_distance": 500000, + "max_timedep_distance_matrix": 500000, + "motor_scooter": { + "max_distance": 500000.0, + "max_locations": 50, + "max_matrix_distance": 200000.0, + "max_matrix_location_pairs": 2500 + }, + "motorcycle": { + "max_distance": 500000.0, + "max_locations": 50, + "max_matrix_distance": 200000.0, + "max_matrix_location_pairs": 2500 + }, + "multimodal": { + "max_distance": 500000.0, + "max_locations": 50, + "max_matrix_distance": 0.0, + "max_matrix_location_pairs": 0 + }, + "pedestrian": { + "max_distance": 250000.0, + "max_locations": 50, + "max_matrix_distance": 200000.0, + "max_matrix_location_pairs": 2500, + "max_transit_walking_distance": 10000, + "min_transit_walking_distance": 1 + }, + "skadi": { + "max_shape": 750000, + "min_resample": 10.0 + }, + "status": { + "allow_verbose": false + }, + "taxi": { + "max_distance": 5000000.0, + "max_locations": 20, + "max_matrix_distance": 400000.0, + "max_matrix_location_pairs": 2500 + }, + "trace": { + "max_alternates": 3, + "max_alternates_shape": 100, + "max_distance": 200000.0, + "max_gps_accuracy": 100.0, + "max_search_radius": 100.0, + "max_shape": 16000 + }, + "transit": { + "max_distance": 500000.0, + "max_locations": 50, + "max_matrix_distance": 200000.0, + "max_matrix_location_pairs": 2500 + }, + "truck": { + "max_distance": 5000000.0, + "max_locations": 20, + "max_matrix_distance": 400000.0, + "max_matrix_location_pairs": 2500 + } + }, + "statsd": { + "port": 8125, + "prefix": "valhalla" + }, + "thor": { + "clear_reserved_memory": false, + "costmatrix_allow_second_pass": false, + "costmatrix_check_reverse_connection": false, + "extended_search": false, + "logging": { + "color": true, + "file_name": "path_to_some_file.log", + "long_request": 110.0, + "type": "std_out" + }, + "max_reserved_labels_count_astar": 2000000, + "max_reserved_labels_count_bidir_astar": 1000000, + "max_reserved_labels_count_bidir_dijkstras": 2000000, + "max_reserved_labels_count_dijkstras": 4000000, + "max_reserved_locations_costmatrix": 25, + "service": { + "proxy": "ipc:///tmp/thor" + }, + "source_to_target_algorithm": "select_optimal" + } +}