PostGIS für AlloyDB Omni installieren

Wählen Sie eine Dokumentenversion aus:

AlloyDB Omni enthält nicht die PostGIS Erweiterung. Sie können sie aber manuell zu einer vorhandenen AlloyDB Omni Installation hinzufügen. Folgen Sie dazu der Anleitung auf dieser Seite, um Unterstützung für das Speichern, Indexieren und Abfragen von Geodaten hinzuzufügen.

Hinweis

Prüfen Sie, ob Sie AlloyDB Omni installiert haben auf Ihrem System.

PostGIS zu Ihrer AlloyDB Omni-Installation hinzufügen

So fügen Sie die PostGIS-Erweiterung zu Ihrer AlloyDB Omni-Installation hinzu: Führen Sie die folgenden Schritte aus:

  1. Suchen Sie nach den Labels der installierten AlloyDB Omni-Versionen:

    Docker

    docker run --rm -it  google/alloydbomni cat VERSION.txt

    Podman

    podman run --rm -it  google/alloydbomni cat VERSION.txt

    Die Ausgabe sieht etwa so aus:

    AlloyDB Omni version: 15.13.0
    

    Notieren Sie sich die AlloyDB Omni-Versionsnummer. Sie benötigen sie im nächsten Schritt.

  2. Legen Sie die Umgebungsvariable OMNI_VERSION fest:
    OMNI_VERSION=VERSION

    Ersetzen Sie VERSION durch die vollständige Datenbankserverversion aus dem vorherigen Schritt, z. B. 15.13.0.

  3. Erstellen Sie einen neuen AlloyDB Omni-Container, der PostGIS enthält:

    Linux

           mkdir ~/alloydb-omni-postgis
           tee ~/alloydb-omni-postgis/Dockerfile << EOF
           ARG OMNI_VERSION
           FROM google/alloydbomni:${OMNI_VERSION}
           RUN apt-get update && 
    apt-get install -y --no-install-recommends
    postgresql-15-postgis-3 &&
    apt-get purge -y --auto-remove &&
    rm -rf /var/lib/apt/lists/* EOF
    cd ~/alloydb-omni-postgis sudo docker build --build-arg OMNI_VERSION=$OMNI_VERSION --tag google/alloydbomni-with-postgis:$OMNI_VERSION .

    macOS

           mkdir ~/alloydb-omni-postgis
           tee ~/alloydb-omni-postgis/Dockerfile << EOF
           ARG OMNI_VERSION
           FROM google/alloydbomni:${OMNI_VERSION}
           RUN apt-get update && 
    apt-get install -y --no-install-recommends
    postgresql-15-postgis-3 &&
    apt-get purge -y --auto-remove &&
    rm -rf /var/lib/apt/lists/* EOF
    cd ~/alloydb-omni-postgis sudo docker build --build-arg OMNI_VERSION=$OMNI_VERSION --tag google/alloydbomni-with-postgis:$OMNI_VERSION .
  4. Erstellen Sie einen neuen Container mit AlloyDB Omni mit dem Namen my-omni-postgis:

    Docker

    docker run --name my-omni-postgis  -e POSTGRES_PASSWORD=NEW_PASSWORD  -d google/alloydbomni-with-postgis:OMNI_VERSION

    Podman

    podman run --name my-omni-postgis  -e POSTGRES_PASSWORD=NEW_PASSWORD  -d google/alloydbomni-with-postgis:OMNI_VERSION
  5. Stellen Sie eine Verbindung zu Ihrer Datenbank mit der PostGIS-Erweiterung her:

    docker exec -it my-omni-postgis psql -h localhost -U postgres
  6. Aktivieren Sie PostGIS:

       CREATE EXTENSION IF NOT EXISTS POSTGIS;
       SELECT postgis_full_version();

    Die Ausgabe sieht dann ungefähr so aus:

       postgres=# SELECT postgis_full_version();
       postgis_full_version
       --------------------------------------------------------------------------------------------------------------------------------
       POSTGIS="3.3.2 4975da8" [EXTENSION] PGSQL="150" GEOS="3.11.1-CAPI-1.17.1" PROJ="9.1.1" LIBXML="2.9.14" LIBJSON="0.16" LIBPROTOBUF="1.4.1" WAGYU="0.5.0 (Internal)"
       (1 row)