ai-postgres-docker/docker-entrypoint-initdb.d/002-install-pgvector.sh

40 lines
948 B
Bash

#!/bin/bash
create_sql=`mktemp`
# Checks to support bitnami image with same scripts so they stay in sync
if [ ! -z "${BITNAMI_APP_NAME:-}" ]; then
if [ -z "${POSTGRES_USER:-}" ]; then
POSTGRES_USER=${POSTGRESQL_USERNAME}
fi
if [ -z "${POSTGRES_DB:-}" ]; then
POSTGRES_DB=${POSTGRESQL_DATABASE}
fi
if [ -z "${PGDATA:-}" ]; then
PGDATA=${POSTGRESQL_DATA_DIR}
fi
fi
if [ -z "${POSTGRESQL_CONF_DIR:-}" ]; then
POSTGRESQL_CONF_DIR=${PGDATA}
fi
cat <<EOF >${create_sql}
CREATE EXTENSION IF NOT EXISTS vector CASCADE;
EOF
if [ -z "${POSTGRESQL_PASSWORD:-}" ]; then
POSTGRESQL_PASSWORD=${POSTGRES_PASSWORD}
fi
export PGPASSWORD="$POSTGRESQL_PASSWORD"
# create extension timescaledb in initial databases
psql -U "${POSTGRES_USER}" postgres -f ${create_sql}
psql -U "${POSTGRES_USER}" template1 -f ${create_sql}
if [ "${POSTGRES_DB:-postgres}" != 'postgres' ]; then
psql -U "${POSTGRES_USER}" "${POSTGRES_DB}" -f ${create_sql}
fi