Archiv der Kategorie: Technisches

Geodaten speichern und darstellen mit uMap

Ziel der ganzen Sache ist, verschiedene Karten, die mit meinem Leben zu tun haben oder die Daten visualisieren, die mich interessieren, zu speichern, sammeln und darzustellen, z.B. Urlaube, CVJM-Freizeiten, Energieinfrastruktur in Deutschland, besuchte Orte, gereiste und mitgetrackte Routen usw.

Dazu will ich uMap benutzen, eine OpenSource-Software, die Django (mit dem GeoDjango-Modul) und Leaflet nutzt und auf django-leaflet-storage und Leaflet.Storage aufbaut. Im Hintergrund soll eine PostgreSQL-Datenbank mit der Erweiterung PostGIS dienen, dazu werden noch die Bibliotheken GEOS und PROJ.4 benötigt.

Bei meinem Hoster uberspace gibt es Anleitungen für PostgreSQL und Django (Python).

Bisher ist leider noch nicht alles geschafft, bisher funktioniert

  • Python/Django
  • PostgreSQL
  • GEOS
  • PROJ.4
  • gdal
  • PostGIS

Es fehlen

  • django-leaflet-storage
  • uMap

Was bisher geschah:

Python

mkdir -p ~/bin ~/lib/python2.7
easy_install-2.7 django pip-2.7
install flup
mkdir ~/html/static
cp -a ~/lib/python2.7/Django-1.6.5-py2.7.egg/django/contrib/admin/static/admin ~/html/static/

PostgreSQL

uberspace-setup-postgresql
createdb friekiwi
createuser --interactive -P
createdb --owner=friekiwi-umap friekiwi-umap

GEOS

in $HOME/python/

wget http://download.osgeo.org/geos/geos-3.4.2.tar.bz2
tar xvjf geos-3.4.2.tar.bz2
cd geos-3.4.2/
./configure --prefix $HOME
make
make install
cd ..

PROJ.4

wget http://download.osgeo.org/proj/proj-4.8.0.tar.gz
tar xvfz proj-4.8.0.tar.gz
cd proj-4.8.0/
./configure --prefix $HOME
make
make install
cd ..

gdal

wget http://download.osgeo.org/gdal/1.11.1/gdal-1.11.1.tar.gz
tar xvazf gdal-1.11.1.tar.gz
cd gdal-1.11.1
./configure --prefix $HOME --with-geosconfig=$HOME/bin/geos-config --with-pg=/package/host/localhost/postgresql-9.2.6-1/bin/pg_config
make && make install
cd ..

PostGIS

wget http://download.osgeo.org/postgis/source/postgis-2.1.4.tar.gz
tar xzf postgis-2.1.4.tar.gz
cd postgis-2.1.4
./configure --with-projdir=$HOME --with-geosconfig=$HOME/bin/geos-config --with-gdalconfig=$HOME/bin/gdal-config
mkdir $HOME/postgis
make && make install DESTDIR=$HOME/postgis REGRESS=1
cd ..

Weitere Vorbereitungen

sed -i 's@\$libdir@$HOME\/postgis\/lib\/postgis-2.1.so@g' $HOME/postgis/share/contrib/postgis/postgis.sql

 

Jetzt muss in der Datei $HOME/service/postgresql/run an der Variablen LD_LIBRARY_PATH vorne der Pfad $HOME/lib/: angefügt werden:

export LD_LIBRARY_PATH=$HOME/lib/:/package/host/localhost/postgresql-${POSTGRESVERSION}/lib/:$LD_LIBRARY_PATH

PostgreSQL neustarten:

svc -du ~/service/postgresql

django-leaflet-storage

pip install django-leaflet-storage

 

uMap

pip install virtualenv

https://wiki.uberspace.de/development:python

https://bitbucket.org/yohanboniface/umap/wiki/Home

pip install virtualenvwrapper

in ~/.bash_profile folgende Zeile, dann entweder neues Terminal oder die Zeile auch direkt selbst im Terminal ausführen

source „$HOME/bin/virtualenvwrapper.sh“

git clone https://bitbucket.org/yohanboniface/umap.git
pip install -r requirements.txt
pip install -e .
cp umap/settings/local.py.sample umap/settings/local.py

 

 

 

Update:

Dank Rays Hinweis konnte ich PostGIS doch noch installieren und danach weitermachen. Die Problematiken, die ich damit hatte (configure: error: could not find proj_api.h you may need to specify the directory of a PROJ.4 installation using withprojdir) (und die der uberspace-Support leider auch nicht ohne weiteres lösen konnte), habe ich daher wieder aus dem Artikel entfernt.