MyGear- PostGIS
Ich hatte mir Postgres mit docker-compose auf der Synology installiert. Dazu habe ich folgende YAML benutzt:
services:
database:
image: 'postgres:latest'
ports:
- 5432:5432
env_file:
- .env
volumes:
- /volume1/docker/django-postgres/db-data/:/var/lib/postgresql/
- /volume1/docker/django-postgres/init.sql:/docker-entrypoint-initdb.d/init.sql
pgadmin:
image: dpage/pgadmin4
ports:
- 80:80
env_file:
- .env
depends_on:
- database
networks:
- postgres-network
volumes:
- /volume1/docker/django-postgres/pgadmin-data/:/var/lib/pgadmin/
networks:
postgres-network:
driver: bridge
mit folgenden Daten im .env-File:
POSTGRES_USER: username
POSTGRES_PASSWORD: password
POSTGRES_DB: default-db
PGADMIN_DEFAULT_EMAIL: username
PGADMIN_DEFAULT_PASSWORD: password
Da ich aber in meinem Projekt auch mit GPS-Daten arbeiten will, habe ich ein bisschen recherchiert und GeoDjango gefunden. Dann habe ich festgestellt, dass ich dafür in Postgres die Erweiterung PostGIS benötige. Nach kurzer Suche festgestellt, dass ich es zwar getrennt installieren kann, ich kann aber auch einfach den Container der Datenbank auf PostGIS ändern.
**Achtung:** Die Datenbankdaten der alten Datenbank sind damit weg. Bei mir nicht schlimm, da waren sowieso nur Testdaten drin.
In obigem Beispiel wird also aus:
services:
database:
image: 'postgres:latest'
einfach
services:
database:
image: 'postgis/postgis'
Nachdem docker durchgelaufen war, musste ich wie im Artikel hier noch mal die Rechte für meinem Projekt-User setzten und den Superuser in Django anlegen.
Jetzt habe ich mir erst mal eine Testdatenbank angelegt, um mit PostGIS zu spielen.