Det är inte alls svårt!

Jag skulle vilja prova en server med öppen källkod, men det är så svårt…

Jag hoppas att jag genom åren kunnat visa att om man bara bestämmer sig för att prova och inte ger upp så är det inte alls svårt att sätta upp en egen server för geodatatjänster. Men vi tar det en gång till.

Du kan använda ”OS Geo Live” för att prova utan att installera, där de flesta serverfunktioner redan är installerade, eller så kan du använda exempelvis Boundless ”Open Geo Suite”, som installerar och lägger till rätta väldigt mycket automatiskt.

Vill du veta mer om OS Geo Live eller Open Geo Suite så kan du söka här på bloggen så kommer du att hitta flera inlägg som behandlar dessa.

Nu kör vi en manuell installation av en geodatabas, samt en geoserver för OGC-tjänster som WMS/WFS samt möjlighet att skapa webbkartor. Detta är inte riktigt lika lätt som OS Geo Live eller Open Geo Suite, men inte långt ifrån. Även detta har jag tidigare inlägg som avhandlar så jag hoppas att ingen tycker att jag är tjatig…

Jag installerar på en Linux Ubuntu server 14.04, men jag antar att många kommandon är samma på andra linux distributioner. Servern installeras med DHCP adress, men det är inte svårt att sätta en fast adress och lägga in datorn i en befintlig nätverksstruktur om så önskas.

Om man vill kan man ladda hem och kompilera kod för att få de absolut senaste versionerna av de mjukvaror jag kommer att använda, men i andan att hålla det enkelt så nöjer jag mig med den som finns via standardkällorna.

sudo apt-get install postgresql-9.3-postgis-2.1 -y

Sedan behöver man (som vanligt) sätta upp lösenord och tillåta att man ansluter till databasen från en annan dator.

sudo -u postgres psql postgres
\password postgres
(nytt lösenord)
\q

Ändra i filen /etc/postgresql/9.3/main/postgresql.conf:

#listen_addresses = 'localhost'
till
listen_addresses = '192.168.0.100'

Du ersätter IP-adressen med din egen (visa IP med ifconfig). Om du är ovan med att redigera filer i linux kan du exempelvis använda ”nano”:

sudo nano /etc/postgresql/9.3/main/postgresql.conf

Redigera texten, använd CTRL+O för att spara och CTRL+X för att avsluta.

Du behöver även lägga till en rad i filen /etc/postgresql/9.3/main/pg_hba.conf.

host  all  all  192.168.0.0/24  md5

Även här anpassar du nätadressen till ditt eget nät. Observera att det inte är serverns IP, utan nätverkets adressrymd (”0” på slutet), i mitt exempel så använder jag ”/24” vilket betyder alla adresser som börjar på ”192.168.0.X”.

Efter omstart av postgres (sudo service postgresql restart) eller servern (sudo reboot) så skall det gå att ansluta till servern från exempelvis PgAdminIII på en annan dator.

Skärmbild från 2015-10-10 15:23:37


Vill du ändå använda den nysläppta PostGIS 2.2 så kör nedanstående på servern:

sudo apt-get install postgresql-server-dev-9.3
sudo apt-get install make libgdal-dev libxml2-dev libgeos-dev libproj-dev
wget http://download.osgeo.org/postgis/source/postgis-2.2.0.tar.gz
tar -xf postgis-2.2.0.tar.gz
cd postgis-2.2.0
./configure
make
sudo make install

För att kunna skapa egna PostGIS databaser så behövs även en mall. Beroende på om du har PostGIS 2.1 eller 2.2 så kan du behöva redigera lite i kommandona nedan.

cd /usr/share/postgresql/9.3/contrib/postgis-2.1
sudo -u postgres createdb mall_postgis
sudo -u postgres psql -d mall_postgis -f postgis.sql
sudo -u postgres psql -d mall_postgis -f rtpostgis.sql
sudo -u postgres psql -d mall_postgis -f spatial_ref_sys.sql

Det är sedan bara att skapa de användare, grupper och databaser man vill i exempelvis PgAdminIII.

Skärmbild från 2015-10-10 16:20:51

Jag skapar användaren ”klakar” och rollen ”geousers”, där ”klakar” är medlem. Jag skapar en databas ”geodata” baserad på mallen som skapades i kommandona ovan (sätts på Definition fliken). På Privileges lägger jag till gruppen geousers och tar bort ”Public”.

Scheman och tabeller kan sedan skapas i QGIS. I QGIS 2.12 kan man till och med göra det i QGIS Browser.

Skärmbild från 2015-10-10 16:27:43

Det skall bli skönt med säkrare hantering av inloggningar och lösenord i exempelvis PostGIS när QGIS 2.12 släpps.

GeoServer

GeoServer kan inte installeras med ett enkelt apt-get kommando. Men det är inte så svårt ändå…

sudo apt-get install tomcat7 unzip
wget http://downloads.sourceforge.net/project/geoserver/GeoServer/2.8.0/geoserver-2.8.0-war.zip
unzip geoserver-2.8.0-war.zip
sudo cp geoserver.war /var/lib/tomcat7/webapps

Surfa in på http://192.168.0.100:8080/geoserver eller motsvarande på din egen server. Det kan i och för sig ta en liten stund för servern att läsa in hela paketet, så ha is i magen om inget händer direkt.

Skärmbild från 2015-10-10 18:35:43

Logga in med admin/geoserver, vilket är en av alla säkerhetsjusteringar som du bör ändra på…

Det finns lite data redan, men du kan lägga till dina egna PostGIS lager enkelt.

Börja med att skapa en ny ”Arbetsyta”.

Klicka på ”Förråd” och sedan ”Lägg till nytt förråd”. Därefter väljer du ”PostGIS” och fyller i relevanta fält.

Skärmbild från 2015-10-10 18:46:27

Här gäller det att det redan finns ett schema i PostGIS databasen på angiven adress, som angiven användare kan komma åt. Dessa har du således redan skapat med exempelvis QGIS.

Skärmbild från 2015-10-10 18:48:51

Jag har bara ett lager (tabell) inläst i mitt schema, så nästa steg blir att ”Publicera” detta. Man behöver inte mer än klicka på länken för att beräkna utsträckning så kan man klicka på ”Spara” i nästa steg och så är det klart.

Skärmbild från 2015-10-10 18:53:10

Under ”Förhandsvy Lager” så kan man enkelt förhandsgranska det nyss publiserade lagret.

Att skapa stilar och snygga kartor för WMS och Open Layers är nu bara en fråga om lite pyssel…

I morgon skall jag se om jag kan förenkla lite till och rätta några småproblem som kan vara bra, men inte nödvändiga att fixa till. Jag skall se om jag hinner titta lite mer på detaljer i tjänsterna också.

Annonser

Taggar:,

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s

%d bloggare gillar detta: