diff --git a/Dockerfile b/Dockerfile
index 5c4f8638c7df8a753a379cd35dbd8d040e44f79b..4f54261b81ff0541ec67a721140bdaa75328b7a3 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -2,6 +2,10 @@
 # Base docker file having defined environment for build and run of a Hivemind instance.
 # Use scripts/ci/build_ci_base_image.sh to build a new version of the CI base image. It must be properly tagged and pushed to the container registry.
 
+ARG POSTGREST_VERSION=v12.0.2
+
+FROM postgrest/postgrest:${POSTGREST_VERSION} AS pure_postgrest
+
 FROM --platform=$BUILDPLATFORM python:3.8-slim as runtime
 
 ARG TARGETPLATFORM
@@ -96,12 +100,19 @@ ARG HTTP_PORT=8080
 ENV HTTP_PORT=${HTTP_PORT}
 
 # Lets use by default host address from default docker bridge network
-ARG POSTGRES_URL="postgresql://hivemind@172.17.0.1/haf_block_log"
+ARG POSTGRES_URL="postgresql://hivemind@haf-instance:5432/haf_block_log"
 ENV POSTGRES_URL=${POSTGRES_URL}
 
 ARG POSTGRES_ADMIN_URL="postgresql://haf_admin@172.17.0.1:5432/haf_block_log"
 ENV POSTGRES_ADMIN_URL=${POSTGRES_ADMIN_URL}
 
+ARG USE_POSTGREST=1
+ENV USE_POSTGREST=${USE_POSTGREST}
+
+ENV PGRST_DB_SCHEMA="hivemind_endpoints"
+ENV PGRST_DB_ANON_ROLE="hivemind"
+ENV PGRST_DB_ROOT_SPEC="home"
+
 ENV LANG=en_US.UTF-8
 
 USER hivemind
@@ -109,6 +120,7 @@ WORKDIR /home/hivemind
 
 SHELL ["/bin/bash", "-c"] 
 
+COPY --chmod=755 --from=pure_postgrest /bin/postgrest /usr/local/bin
 COPY --from=builder --chown=hivemind:hivemind  /home/hivemind/app/dist /home/hivemind/dist 
 COPY --from=builder --chown=hivemind:hivemind  /home/hivemind/.hivemind-venv /home/hivemind/.hivemind-venv 
 COPY --from=builder --chown=hivemind:hivemind  /home/hivemind/app/docker/docker_entrypoint.sh .
diff --git a/postgrest.conf b/postgrest.conf
new file mode 100644
index 0000000000000000000000000000000000000000..1ed102f28e0fe263ba9fcba1d6388495798b7053
--- /dev/null
+++ b/postgrest.conf
@@ -0,0 +1,7 @@
+db-uri = "postgres://haf_admin@/haf_block_log"
+db-schema = "hivemind_endpoints"
+db-anon-role = "hivemind"
+db-pool = 20
+db-pool-acquisition-timeout = 10
+server-port = 3000
+admin-server-port = 3001
\ No newline at end of file
diff --git a/scripts/ci/start_postgrest.sh b/scripts/ci/start_postgrest.sh
new file mode 100755
index 0000000000000000000000000000000000000000..535ce8c151c072b2b7d3a6700f5c07f76d6d09f5
--- /dev/null
+++ b/scripts/ci/start_postgrest.sh
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+set -e
+set -o pipefail
+
+POSTGRES_HOST="localhost"
+POSTGRES_PORT=5432
+POSTGRES_USER="hivemind"
+WEBSERVER_PORT=8080
+ADMIN_PORT=3001
+
+
+
+while [ $# -gt 0 ]; do
+  case "$1" in
+    --host=*)
+        POSTGRES_HOST="${1#*=}"
+        ;;
+    --port=*)
+        POSTGRES_PORT="${1#*=}"
+        ;;
+    --user=*)
+        POSTGRES_USER="${1#*=}"
+        ;;
+    --webserver_port|--webserver-port=*)
+        WEBSERVER_PORT="${1#*=}"
+        ;;
+    --admin_port|--admin-port=*)
+        ADMIN_PORT="${1#*=}"
+        ;;
+    --postgres-url=*)
+        POSTGRES_URL="${1#*=}"
+        ;;
+    -*)
+        echo "ERROR: '$1' is not a valid option"
+        echo
+        exit 1
+        ;;
+    *)
+        echo "ERROR: '$1' is not a valid argument"
+        echo
+        exit 2
+        ;;
+    esac
+    shift
+done
+
+POSTGRES_ACCESS=${POSTGRES_URL:-"postgresql://$POSTGRES_USER@$POSTGRES_HOST:$POSTGRES_PORT/haf_block_log"}
+
+start_webserver() { 
+    export PGRST_DB_URI=$POSTGRES_ACCESS
+    export PGRST_SERVER_PORT=$WEBSERVER_PORT
+    export PGRST_ADMIN_SERVER_PORT=$ADMIN_PORT
+    export PGRST_DB_ROOT_SPEC="home"
+
+    postgrest postgrest.conf
+}
+
+start_webserver &
+