Proyecto Tipo: Mostrar mapas gratis, instalación de Nominatim

PROBLEMA

El cliente tiene la necesidad de mostrar mapas gratis de centro américa.

En la empresa han valorado las distintas opciones y creen que la mejor es montar un servidor con Nominatim (el motor de OSM *) para servir mapas de Open Street Map.

Han intentado instalarlo varias veces sin éxito, probando sobre distintas versiones de Linux (CentOS, Ubuntu 16 y Ubuntu 18).

CONCEPTO

Se trata de montar un servidor con el servicio Nominatim y mapas de América Central. Para lo cual el cliente proporcionará un servidor con las siguientes características mínimas:

  • Intel core i3 4170, 1 TeraByte de disco duro y 8 GigaByte de RAM
  • Ubuntu 18.04
  • Conexión a Internet estable
  • Configurado para estar siempre encendido
  • Con conexión remota habilitada
  • Credenciales de usuario con capacidad para hacer operaciones de root

Mientras el cliente no indique lo contrario, los mapas que se instalarán son los de América Central de Geofabrik.

Se montará el servicio en un entorno virtualizado con redirección NAT, con actualización de mapas automática y con instrucciones básicas sobre como arrancarlo y manejarlo.

Opcionalmente, se guiará al cliente en la preparación del servidor y se elaborará un tutorial con todos los pasos necesarios para que el cliente pueda replicar la instalación de manera independiente, que no se ofrece de manera exclusiva al cliente quedando los derechos de uso y explotación reservados al proveedor.

PRECIO

Tarea Opcional Importe
1 Preparación del servidor 400€
2 Instalación de Nominatim No 1.000€
3 Instalación de mapas de américa central 400€
4 Tutorial 200€
Total 1.000€/2.000€

TIEMPO

Dado que la obtención de resultados favorables de este trabajo depende de muchos factores externos como la conexión a Internet o las capacidades de la máquina que se use de servidor, si no se lograse un resultado favorable en el tiempo máximo de una (1) semana, se devolvería todo el dinero anticipado.

Nota aclaratoria:

Este proyecto tipo, es un ejemplo de proyecto que se ha realizado o se podría realizar. En ningún caso tiene validez como presupuesto real y sólo pretende documentar las distintas posibilidades que existen.

* Como bien indica @LuisE2 por Twitter, Nominatim es un geocoder (hace la conversión entre direcciones y coordenadas y viceversa). En este caso se mezclan los dos términos ya que el cliente así lo hacía, con ánimo de facilitar el entendimiento. Lo que querían era mostrar mapas y buscar por dirección. Tiene razón Luis en que es uso incorrecto del lenguaje.

Por favor, si tuviese necesidad de algo similar, no dude en ponerse en contacto.

Reverse Geocoding: Nominatim

Provider: OpenStreetMaps
Url: http://wiki.openstreetmap.org/wiki/Nominatim#Reverse_Geocoding
Provider Client Libraries:
Multiple Languages: Yes
Limitations: 1 request per second (86400 per day)
Price: Free

 

You can use thid party providers or install your own instance

 

Example request:

http://nominatim.openstreetmap.org/reverse?format=xml&lat=52.5487429714954&lon=-1.81602098644987&zoom=18&addressdetails=1

Example response:

<reversegeocode timestamp="Fri, 06 Nov 09 16:33:54 +0000" querystring="...">
   <result place_id="1620612" osm_type="node" osm_id="452010817">
     135, Pilkington Avenue, Wylde Green, City of Birmingham, West Midlands (county), B72, United Kingdom
   </result>
   <addressparts>
     <house_number>135</house_number>
     <road>Pilkington Avenue</road>
     <village>Wylde Green</village>
     <town>Sutton Coldfield</town>
     <city>City of Birmingham</city>
     <county>West Midlands (county)</county>
     <postcode>B72</postcode>
     <country>United Kingdom</country>
     <country_code>gb</country_code>
   </addressparts>
</reversegeocode>