From faf0d9d8793fba6f9557865b297ca900a09e4c91 Mon Sep 17 00:00:00 2001 From: firtoz <108406948+firtoz@users.noreply.github.com> Date: Sun, 24 Mar 2024 18:05:36 +0000 Subject: [PATCH] test: try to use custom Dockerfile for pgvector support --- docker-compose.yml | 6 ++---- docker/pgvector/01_init.sql | 1 + docker/pgvector/Dockerfile | 17 +++++++++++++++++ 3 files changed, 20 insertions(+), 4 deletions(-) create mode 100644 docker/pgvector/01_init.sql create mode 100644 docker/pgvector/Dockerfile diff --git a/docker-compose.yml b/docker-compose.yml index bbd2fa9aac..db120e91d1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -27,10 +27,8 @@ services: # postgres postgres: - # mdillon/postgis is postgres + PostGIS (only). if you need additional - # extensions, it's probably time to create a purpose-built image with all - # necessary extensions. sorry, and thanks for adding support for them! - image: "postgis/postgis:14-3.3" + build: + context: docker/pgvector container_name: "typeorm-postgres" ports: - "5432:5432" diff --git a/docker/pgvector/01_init.sql b/docker/pgvector/01_init.sql new file mode 100644 index 0000000000..621c34a153 --- /dev/null +++ b/docker/pgvector/01_init.sql @@ -0,0 +1 @@ +CREATE EXTENSION vector; diff --git a/docker/pgvector/Dockerfile b/docker/pgvector/Dockerfile new file mode 100644 index 0000000000..220fd39f88 --- /dev/null +++ b/docker/pgvector/Dockerfile @@ -0,0 +1,17 @@ +# Start from the PostGIS image +# mdillon/postgis is postgres + PostGIS (only). if you need additional +# extensions, it's probably time to create a purpose-built image with all +# necessary extensions. sorry, and thanks for adding support for them! +FROM postgis/postgis:14-3.3 + +# Install git +RUN apt-get update && apt-get install -y git make gcc postgresql-server-dev-all + +# Clone the pgvector repository +RUN git clone --branch v0.6.2 https://github.com/pgvector/pgvector.git + +COPY 01_init.sql /docker-entrypoint-initdb.d/ + +# Build and install the pgvector extension +WORKDIR /pgvector +RUN make && make install