AlloyDB Omni non include l'estensione PostGIS, ma puoi aggiungerla manualmente a un'installazione AlloyDB Omni esistente seguendo le istruzioni riportate in questa pagina per aggiungere il supporto per l'archiviazione, l'indicizzazione e le query dei dati geospaziali.
Prima di iniziare
Assicurati di aver installato AlloyDB Omni sul tuo sistema.
Aggiungere PostGIS all'installazione di AlloyDB Omni
Per aggiungere l'estensione PostGIS all'installazione di AlloyDB Omni, segui questi passaggi:
- Trova le etichette delle versioni di AlloyDB Omni installate:
Docker
docker run --rm -it google/alloydbomni cat VERSION.txt
Podman
podman run --rm -it google/alloydbomni cat VERSION.txt
L'output è simile al seguente:
AlloyDB Omni version: 15.7.0
Prendi nota del numero di versione di AlloyDB Omni, che ti servirà nel passaggio successivo.
- Imposta la variabile di ambiente
OMNI_VERSION
:OMNI_VERSION=VERSION
Sostituisci VERSION con la versione completa del server di database del passaggio precedente, ad esempio
15.5.3
. - Crea un nuovo contenitore AlloyDB Omni che includa PostGIS:
Linux
mkdir ~/alloydb-omni-postgis
tee -a ~/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/* EOFcd ~/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 -a ~/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/* EOFcd ~/alloydb-omni-postgis
sudo docker build --build-arg OMNI_VERSION=$OMNI_VERSION --tag google/alloydbomni-with-postgis:$OMNI_VERSION .
- Crea un nuovo contenitore con AlloyDB Omni denominato
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
Connettiti al database con l'estensione PostGIS:
docker exec -it my-omni-postgis psql -h localhost -U postgres
Attiva PostGIS:
CREATE EXTENSION IF NOT EXISTS POSTGIS;
SELECT postgis_full_version();
L'output è simile al seguente:
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)