Beispielapplikation und Datenbank installieren

Installation der Datenbank für gostip

Die Beispielapplikation verwendet Postgresql. Hier eine schnelle Anleitung mit vielen Bildern, um die ganze Anwendung zum Laufen zu bringen.

Voraussetzung: Das Go-Projekt mit allen Abhängigkeiten ist geladen

Mit IntelliJ IDEA Community Edition und installiertem Go Plugin geht das folgendermaßen:

  • Neues Go Projekt anlegen
  • Im Terminal-Fenster den GOPATH auf das aktuelle Projektverzeichnis setzen: export GOPATH=<aktuelles Projektverzeichnis>
  • Projekt von Github herunterladen: go get github.com/geobe/gostip
  • Abhängige Projekte dazu laden: go get ...

IntelliJ Terminal WindowDer Verzeichnisbaum enthält dann alle Packages.Verzeichnisbaum mit allen geladenen Paketen

Datenbankserver installieren und Datenbank einrichten

Bevor das Programm gestartet werden kann, muss Postgresql installiert und die Datenbank eingerichtet werden. Am einfachsten geht das mit dem Installer von EDB.

Installation der aktuellen PostgreSQL Version
Installer abgeschlossen, keine weitere Software installieren StackBuilder benötigen wir nicht, daher Checkbox nicht markieren
pgAdmin im Startmenü pgAdmin wird mit installiert und ins Startmenü eingefügt.
Benutzer und Datenbank einrichten

Mit pgAdmin können Benutzer und Datenbank eingerichtet werden.

Das Zugangspasswort für den PostgreSQL Server ist unabhängig von der gostip Applikation. Passwort dokumentieren!
Namen und Passwort sind in der devconfig.json Datei beschrieben. Für die Produktionsversion dürfen Nutzername und Passwort NICHT auf Github stehen!
Zuerst den Nutzeraccount anlegen.
Nutzername
Passwort
Login-Berechtigung nicht vergessen!

Alle Einstellungen lassen sich auch später über die Properties in pgAdmin ändern.

Jetzt die Datenbank anlegen
Den richtigen Nutzer als Owner festlegen. Dies kann später auch über die Datenbank-Properties geändert werden.

 

Jetzt könnte das Programm schon laufen …Programm aus IntelliJ starten

Zeitzone des Datenbank-Servers überprüfen

Beim Programmlauf kann noch der folgende Fehler auftreten:Es gibt Probleme mit der in PostgreSQL eingestellten Zeitzone. Die Zeitzonen-Eigenschaft des Datenbank-Servers lässt sich nicht über pgAdmin anpassen, sondern nur durch Editieren der postgresql.conf Datei.

Die postgresql.conf Datei befindet sich im Datenverzeichnis des Servers, standardmäßig ../data. Die Datei kann nur als superuser editiert werden, z.B. mit vim oder nano. Visuell geht es auch, wenn man den Dateiexplorer als superuser startet su nemo und in das data Verzeichnis wechselt. Dort kann man den Texteditor aufrufen
In der Konfigurationsdatei muss die timezone Variable auf ‚UTC‘ gesetzt werden. Es gibt auch noch eine log_timezone Variable, die vorsichtshalber auch auf ‚UTC‘ gesetzt werden sollte.
Jetzt kann der Datenbankserver aus pgAdmin mit Reload Configuration neu konfiguriert werden. Alternativ könnte man den Rechner neu starten, was unter Linux eher unüblich ist.

Das Programm sollte jetzt problemlos laufen. Auf dem Server-Rechner ist es im Browser unter localhost:8090 zu erreichen. Die vorkonfigurierten User und Passworte stehen in devconfig.json.