How to Building planet from osm file and insert it into web ?

Hi All,

I want to build openstreetmap server on my own server.I have Indonesia.osm for test only.

My schema is

osm — >> postgis —> mapnik → file_image

I have following instruction from :

http://weait.com/content/build-your-own-openstreetmap-server

Then i have successfully rendering England image.

I want to ask how to rendering custom location for resulting image, whereas i have file Indonesia.osm.So i should generate file map of Indonesia.

Why file output be England Image, how to create Indonesia image ?

Then after that, how to include that to Webserver so i can build map website like as www.openstreetmap.org ??

Thanks

That is what the tutorial promised:

I suggest you look in the generate_xml.py and generate_image.py files to see
if you can find a boundig box or shape for England.

Did you import the whole planet.osm file? You could have inported only indonesia.osm.

Hi,
there is another (somewhat simpler) approach to find here:
http://wiki.openstreetmap.org/wiki/Ubuntu_tile_server
it’s for Ubuntu 11.04 and 11.10

Chris

hi all, thanks for your reply.

Then, if i have rendered image successfully, what should i do to publish them to webserver to build map which get images from image which i rendered before ?

Or are there others schenario ?

Thanks

I have tried following reference from :

http://wiki.openstreetmap.org/wiki/Ubuntu_tile_server

But when i execute :

osm2pgsql -S /usr/share/osm2pgsql/default.style --slim -C 1500 ireland.osm.pbf

I got error message like bellow :

osm2pgsql SVN version 0.70.5

Using projection SRS 900913 (Spherical Mercator)
Setting up table: planet_osm_point
NOTICE: table “planet_osm_point” does not exist, skipping
NOTICE: table “planet_osm_point_tmp” does not exist, skipping
Setting up table: planet_osm_line
NOTICE: table “planet_osm_line” does not exist, skipping
NOTICE: table “planet_osm_line_tmp” does not exist, skipping
Setting up table: planet_osm_polygon
NOTICE: table “planet_osm_polygon” does not exist, skipping
NOTICE: table “planet_osm_polygon_tmp” does not exist, skipping
Setting up table: planet_osm_roads
NOTICE: table “planet_osm_roads” does not exist, skipping
NOTICE: table “planet_osm_roads_tmp” does not exist, skipping
Mid: pgsql, scale=100, cache=1500MB, maxblocks=192001*8192
Setting up table: planet_osm_nodes
*** WARNING: intarray contrib module not installed
*** The resulting database will not be usable for applying diffs.
NOTICE: table “planet_osm_nodes” does not exist, skipping
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index “planet_osm_nodes_pkey” for table “planet_osm_nodes”
Setting up table: planet_osm_ways
NOTICE: table “planet_osm_ways” does not exist, skipping
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index “planet_osm_ways_pkey” for table “planet_osm_ways”
Setting up table: planet_osm_rels
NOTICE: table “planet_osm_rels” does not exist, skipping
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index “planet_osm_rels_pkey” for table “planet_osm_rels”

Reading in file: ireland.osm.pbf
Entity: line 1: parser error : Document is empty

^
ireland.osm.pbf : failed to parse
Error occurred, cleaning up

Why document is empty ? what’s mean ?

What should i do to solve this ?

Thanks

I have successfully installed using mods_tile.But why map appear only on Mapnik Base Layer, while on Tile layer Map is doesn’t show.

What’s wrong wit it.

You can check my site to get it http://www.osmosa.net

Thanks

The Mapnik tiles you retrieve from openstreetmap.org like:
http://b.tile.openstreetmap.org/10/531/356.png
they exists so you see them.

In the Base Layer “Local tiles” you request
http://www.osmosa.net/osm/10/531/356.png
but that file does not exist on your server.

Not even http://www.osmosa.net/osm/ exists.

i have trid to create folder osm manually, but images still don;t generate automatically.

So what should i do ?

i try use execute command renderd -f

that’s error log like bellow:

root@tx:~# renderd -f
renderd[4230]: Rendering daemon started
renderd[4230]: Parsing section renderd
renderd[4230]: Parsing render section 0
renderd[4230]: Parsing section mapnik
renderd[4230]: Parsing section default
renderd[4230]: config renderd: unix socketname=/var/run/renderd/renderd.sock
renderd[4230]: config renderd: num_threads=4
renderd[4230]: config renderd: num_slaves=0
renderd[4230]: config renderd: tile_dir=/var/lib/mod_tile
renderd[4230]: config renderd: stats_file=/var/run/renderd/renderd.stats
renderd[4230]: config mapnik: plugins_dir=/usr/lib/mapnik/0.7/input
renderd[4230]: config mapnik: font_dir=/usr/share/fonts/truetype/ttf-dejavu
renderd[4230]: config mapnik: font_dir_recurse=0
renderd[4230]: config renderd(0): Active
renderd[4230]: config renderd(0): unix socketname=/var/run/renderd/renderd.sock
renderd[4230]: config renderd(0): num_threads=4
renderd[4230]: config renderd(0): tile_dir=/var/lib/mod_tile
renderd[4230]: config renderd(0): stats_file=/var/run/renderd/renderd.stats
renderd[4230]: config map 0: name(default) file(/etc/mapnik-osm-data/osm.xml) uri(/osm/) htcp() host()
renderd[4230]: Initialising unix server socket on /var/run/renderd/renderd.sock
renderd[4230]: Created server socket 4
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Bold.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-BoldItalic.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Bold.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-ExtraLight.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-BoldItalic.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Oblique.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Italic.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-BoldOblique.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Oblique.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Italic.ttf
renderd[4230]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf
Running in foreground mode…
renderd[4230]: Starting stats thread
renderd[4230]: An error occurred while loading the map layer ‘default’: PSQL error:
FATAL: role “www-data” does not exist (encountered during parsing of layer ‘landcover’)
renderd[4230]: An error occurred while loading the map layer ‘default’: PSQL error:
FATAL: role “www-data” does not exist (encountered during parsing of layer ‘landcover’)
renderd[4230]: An error occurred while loading the map layer ‘default’: PSQL error:
FATAL: role “www-data” does not exist (encountered during parsing of layer ‘landcover’)
renderd[4230]: An error occurred while loading the map layer ‘default’: PSQL error:
FATAL: role “www-data” does not exist (encountered during parsing of layer ‘landcover’)

what about that log? anyone can help me ?

You have 4 FATAL’s at the end.

Here your tiles will be placed -i think- if all goes ok. You have to copy/move them to the osm folder.

Does that .xml file exist? Why is the name default?

The Postscript database gives an error of a missinp www-data role. I’m not familiar with roles.

oh…i’m forge something.

I only have file indonesia.osm.bz2, not all of planet_lates.osm.bz2. so i only export that file to postgresql use osm2pgsql.Is this have influence with my issue ?

so if you try compare request

http://b.tile.openstreetmap.org/10/531/356.png

and

http://www.osmosa.net/osm/10/531/356.png

it’s failed to open.

is it effect to my issue ?

On http://www.osmosa.net/map.html only Mapnik is available. You removed the possibility to choose your layer. Why?

But for an Indonesian tile like this of Jakarta
http://c.tile.openstreetmap.org/9/407/264.png
your server would have to provide a tile
http://www.osmosa.net/osm/9/407/264.png

And that gives a 404 error too.

But you could look in your servers /osm/ directory first. What do you find there?

Or look in tile_dir=/var/lib/mod_tile and tell what you find there.

If the renderer stops with FATAL I suppose no tiles are rendered at all.

i remove it while i try configure again from scratch.

this is my step from which i do from scratch:

  1. I have following reference from : http://weait.com/content/build-your-own-openstreetmap-server
    from that refernce i have successfull rendering image of England.but not yet publish into webserver

  2. I following instruction from : http://wiki.openstreetmap.org/wiki/HowTo_mod_tile to publish my image into webserver
    I have finished step by step from instruction above, but i go still error.My tile not found in webserver.you can check it on http://www.osmosa.net/map1.html

everything which i used to following about instruction is from source, bgin mapnik, osm2pgsql, mod_tile.

on log renderd -f


renderd[26069]: Rendering daemon started
renderd[26069]: Parsing section renderd
renderd[26069]: Parsing render section 0
renderd[26069]: Parsing section mapnik
renderd[26069]: Parsing section default
renderd[26069]: config renderd: unix socketname=/var/run/renderd/renderd.sock
renderd[26069]: config renderd: num_threads=4
renderd[26069]: config renderd: num_slaves=0
renderd[26069]: config renderd: tile_dir=/var/lib/mod_tile
renderd[26069]: config renderd: stats_file=/var/run/renderd/renderd.stats
renderd[26069]: config mapnik:  plugins_dir=/usr/lib/mapnik/0.7/input
renderd[26069]: config mapnik:  font_dir=/usr/share/fonts/truetype/ttf-dejavu
renderd[26069]: config mapnik:  font_dir_recurse=0
renderd[26069]: config renderd(0): Active
renderd[26069]: config renderd(0): unix socketname=/var/run/renderd/renderd.sock
renderd[26069]: config renderd(0): num_threads=4
renderd[26069]: config renderd(0): tile_dir=/var/lib/mod_tile
renderd[26069]: config renderd(0): stats_file=/var/run/renderd/renderd.stats
renderd[26069]: config map 0:   name(default) file(/home/frans/Map/bin/mapnik/osm.xml) uri(/osm/) htcp() host()
renderd[26069]: Initialising unix server socket on /var/run/renderd/renderd.sock
renderd[26069]: Created server socket 4
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Bold.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Oblique.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-BoldItalic.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Italic.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-BoldItalic.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-BoldOblique.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Oblique.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Italic.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-ExtraLight.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
renderd[26069]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Bold.ttf
Running in foreground mode...
renderd[26069]: Starting stats thread


and this is my /etc/renderd.conf.



[renderd]
stats_file=/var/run/renderd/renderd.stats
socketname=/var/run/renderd/renderd.sock
num_threads=4
tile_dir=/var/lib/mod_tile ; DOES NOT WORK YET

[mapnik]
plugins_dir=/usr/lib/mapnik/0.7/input
font_dir=/usr/share/fonts/truetype/ttf-dejavu
font_dir_recurse=false

[default]
URI=/osm/
XML=/home/frans/Map/bin/mapnik/osm.xml
;HOST=www.osmosa.net
;HTCPHOST=proxy.openstreetmap.org


and i can’t find anything on /var/lib/mod_tile folder.folder is empty.

What;s wrong with my config ?

Help me to solve this

Thanks

That would be very simple because it is just one .png. Just put it in an img tag.
What you produced here was a MAP of England. One picture. Not all TILES (on all zoomlevels) of England. You cannot move or zoom that picture.

If you want to produce all tlles for all zoomlevels of Indonesia then you need a different approach.

I suppose you use two computers. On the one you want to generate the tiles and then move them to your webserver. Is that correct?

Which error? Why did you omit error(s) here?

But you have to look at the computer where the tiles were generated.

That displays an empty map of the world with a very low zoom level. The top left tile is http://www.osmosa.net/osm_tiles2/1/1/0.png witch sure is not Indonesia. For us it is impossible to zoom in to Indonesia first, especially while the mapnik layer is not there.

Confirmed ?

Greencaps, all of which you said are correct :smiley:

I’m newbie on this.Give me suggesstion where i must begin, give me step by step will very helpfull for me.please…

I need help

nb:i using one machine on this production

thanks

Sorry can’t help you. Never generated tiles in this way.

In the past I’ve seen more post here concerning tile generation. Did you read them all?

ok, i have generate tile succesfull, many png image generated now.

if my /etc/renderd.conf like below:




[renderd]
stats_file=/var/run/renderd/renderd.stats
socketname=/var/run/renderd/renderd.sock
num_threads=4
tile_dir=/var/lib/mod_tile ; DOES NOT WORK YET

[mapnik]
plugins_dir=/usr/lib/mapnik/0.7/input
font_dir=/usr/share/fonts/truetype/ttf-dejavu
font_dir_recurse=false

[default]
URI=/osm/
XML=/home/frans/Map/bin/mapnik/osm.xml
;HOST=www.osmosa.net
;HTCPHOST=proxy.openstreetmap.org


Now my generated tiles image on ~/mapnik/tiles
Where is tile shoud generated so that web can read it ?is it should on /var/lib/mod_tile as like as on /etc/renderd.conf above?

Hi All.

i have successfull render some image using mapnik then i have published it using openlayers.now you can see on my site like www.osmosa.net/map1.html.
But on that process if i want to show map into my site i must add line below on generate_files.py :


 # Augsburg
    bbox = (8.3,48.95,8.5,49.05)
    render_tiles(bbox, mapfile, tile_dir, 1, 16, "Augsburg")

if i want to build whole of the world to the map include all of country with more deep zoom levels like on www.openstreetmap.org ? must i add line like above one by one on my generate_tiles.py then accessing them on openlayers ?

help me please …any solution ?

Thanks

Congratulations! Persistence pays off. Think you can manage the rest too.

Please add a mapnik layer to your site so we can compare tiles. Your tiles are not that detailed. How come?

As said: can’t help as i never used the tilegenerator.

i dunno why my maps don’t include detail information.i still explore about it.i think my map not yet be better.i have import it into postgresql with osm2pgsq.

what do you think about this problem ? any suggestion ?