Prima di iniziare
Installa AlloyDB Omni sul tuo sistema.
Puoi installare PostGIS utilizzando uno dei seguenti metodi:
- Utilizza le opzioni Debian nell'interfaccia a riga di comando Docker o Podman. Docker si basa su un daemon e richiede i privilegi di root per la maggior parte delle operazioni, mentre Podman è senza daemon e senza root.
- Utilizza le immagini di base universali (UBI) di Red Hat. Le immagini del sistema operativo di base del container UBI sono create a partire da parti di Red Hat Enterprise Linux (RHEL).
Aggiungere PostGIS all'installazione di AlloyDB Omni
Per aggiungere l'estensione PostGIS all'installazione di AlloyDB Omni, segui questi passaggi:
Trova le etichette della versione di AlloyDB Omni installata:
Docker
docker run --rm -it google/alloydbomni cat VERSION.txtPodman
podman run --rm -it google/alloydbomni cat VERSION.txtL'output è simile al seguente:
AlloyDB Omni version: 17.5.0Prendi nota del numero di versione di AlloyDB Omni perché ti servirà nel passaggio successivo.
Imposta la variabile di ambiente
OMNI_VERSION:OMNI_VERSION=VERSIONSostituisci
VERSIONcon la versione completa del server di database del passaggio precedente, ad esempio17.5.0.Crea un nuovo contenitore AlloyDB Omni che includa PostGIS:
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-16-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-16-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 . ```Crea un nuovo container con AlloyDB Omni denominato
my-omni-postgis:Docker
docker build -t google/alloydbomni-with-postgis:latest docker run --name my-omni-postgis -e POSTGRES_PASSWORD=NEW_PASSWORD -d google/alloydbomni-with-postgis:OMNI_VERSIONPodman
podman run --name my-omni-postgis -e POSTGRES_PASSWORD=NEW_PASSWORD -d google/alloydbomni-with-postgis:OMNI_VERSIONConnettiti al database con l'estensione PostGIS:
docker exec -it my-omni-postgis psql -h localhost -U postgresAbilita 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)