1
1
# syntax=docker/dockerfile:1.5-labs
2
- ARG postgres_major =15
3
- ARG postgres_minor= 1
2
+ ARG postgresql_major =15
3
+ ARG postgresql_release=${postgresql_major}. 1
4
4
5
5
ARG sfcgal_release=1.3.10
6
6
ARG postgis_release=3.3.2
@@ -33,15 +33,15 @@ ARG hypopg_release=1.3.1
33
33
ARG pg_repack_release=1.4.8
34
34
ARG pgvector_release=0.4.0
35
35
36
- FROM postgres:$postgres_major.$postgres_minor as base
36
+ FROM postgres:${postgresql_release} as base
37
37
# Redeclare args for use in subsequent stages
38
38
ARG TARGETARCH
39
- ARG postgres_major
39
+ ARG postgresql_major
40
40
41
41
FROM base as builder
42
42
# Install build dependencies
43
43
RUN apt-get update && apt-get install -y \
44
- postgresql-server-dev-${postgres_major } \
44
+ postgresql-server-dev-${postgresql_major } \
45
45
build-essential \
46
46
checkinstall \
47
47
cmake \
@@ -337,13 +337,13 @@ RUN apt-get update && apt-get install -y \
337
337
WORKDIR /tmp/pljava-${pljava_release}
338
338
RUN mvn -T 1C clean install -Dmaven.test.skip -DskipTests -Dmaven.javadoc.skip=true
339
339
# Create debian package
340
- RUN cp pljava-packaging/target/pljava-pg${postgres_major }.jar /tmp/
340
+ RUN cp pljava-packaging/target/pljava-pg${postgresql_major }.jar /tmp/
341
341
342
342
FROM base as pljava
343
343
# Download pre-built packages
344
344
RUN apt-get update && apt-get install -y --download-only \
345
345
default-jdk-headless \
346
- postgresql-${postgres_major }-pljava \
346
+ postgresql-${postgresql_major }-pljava \
347
347
&& rm -rf /var/lib/apt/lists/*
348
348
RUN mv /var/cache/apt/archives/*.deb /tmp/
349
349
@@ -377,7 +377,7 @@ RUN checkinstall -D --install=no --fstrans=no --backup=no --pakdir=/tmp --nodoc
377
377
FROM scratch as plv8-deb
378
378
COPY --from=plv8-source /tmp/*.deb /tmp/
379
379
380
- FROM ghcr.io/supabase/plv8:${plv8_release}-pg${postgres_major } as plv8
380
+ FROM ghcr.io/supabase/plv8:${plv8_release}-pg${postgresql_major } as plv8
381
381
382
382
# ###################
383
383
# 14-pg_plan_filter.yml
@@ -496,7 +496,7 @@ RUN checkinstall -D --install=no --fstrans=no --backup=no --pakdir=/tmp --requir
496
496
FROM base as pg_graphql
497
497
# Download package archive
498
498
ARG pg_graphql_release
499
- ADD "https://github.com/supabase/pg_graphql/releases/download/v${pg_graphql_release}/pg_graphql-v${pg_graphql_release}-pg${postgres_major }-${TARGETARCH}-linux-gnu.deb" \
499
+ ADD "https://github.com/supabase/pg_graphql/releases/download/v${pg_graphql_release}/pg_graphql-v${pg_graphql_release}-pg${postgresql_major }-${TARGETARCH}-linux-gnu.deb" \
500
500
/tmp/pg_graphql.deb
501
501
502
502
# ###################
@@ -529,7 +529,7 @@ RUN checkinstall -D --install=no --fstrans=no --backup=no --pakdir=/tmp --nodoc
529
529
FROM base as pg_jsonschema
530
530
# Download package archive
531
531
ARG pg_jsonschema_release
532
- ADD "https://github.com/supabase/pg_jsonschema/releases/download/v${pg_jsonschema_release}/pg_jsonschema-v${pg_jsonschema_release}-pg${postgres_major }-${TARGETARCH}-linux-gnu.deb" \
532
+ ADD "https://github.com/supabase/pg_jsonschema/releases/download/v${pg_jsonschema_release}/pg_jsonschema-v${pg_jsonschema_release}-pg${postgresql_major }-${TARGETARCH}-linux-gnu.deb" \
533
533
/tmp/pg_jsonschema.deb
534
534
535
535
# ###################
@@ -598,7 +598,7 @@ RUN apt-get update && apt-get install -y \
598
598
&& rm -rf /var/lib/apt/lists/*
599
599
RUN rm /tmp/source.deb
600
600
RUN apt-get update && apt-get install -y --download-only \
601
- postgresql-${postgres_major }-pgdg-pgroonga \
601
+ postgresql-${postgresql_major }-pgdg-pgroonga \
602
602
&& rm -rf /var/lib/apt/lists/*
603
603
RUN mv /var/cache/apt/archives/*.deb /tmp/
604
604
@@ -608,7 +608,7 @@ RUN mv /var/cache/apt/archives/*.deb /tmp/
608
608
FROM base as wrappers
609
609
# Download package archive
610
610
ARG wrappers_release
611
- ADD "https://github.com/supabase/wrappers/releases/download/v${wrappers_release}/wrappers-v${wrappers_release}-pg${postgres_major }-${TARGETARCH}-linux-gnu.deb" \
611
+ ADD "https://github.com/supabase/wrappers/releases/download/v${wrappers_release}/wrappers-v${wrappers_release}-pg${postgresql_major }-${TARGETARCH}-linux-gnu.deb" \
612
612
/tmp/wrappers.deb
613
613
614
614
# ###################
@@ -721,14 +721,14 @@ RUN apt-get update && apt-get install -y \
721
721
722
722
# tasks/docker/finalize.yml
723
723
COPY --chown=postgres:postgres files/postgresql_config/postgresql-stdout-log.conf /etc/postgresql/logging.conf
724
- COPY --chown=postgres:postgres files/pgsodium_getkey_urandom.sh.j2 /usr/lib/postgresql/${postgres_major }/bin/pgsodium_getkey.sh
724
+ COPY --chown=postgres:postgres files/pgsodium_getkey_urandom.sh.j2 /usr/lib/postgresql/${postgresql_major }/bin/pgsodium_getkey.sh
725
725
COPY files/pgbouncer_config/pgbouncer_auth_schema.sql /docker-entrypoint-initdb.d/00-schema.sql
726
726
COPY files/stat_extension.sql /docker-entrypoint-initdb.d/01-extension.sql
727
727
728
728
RUN sed -i "s/#unix_socket_directories = '\/ tmp'/unix_socket_directories = '\/ var\/ run\/ postgresql'/g" /etc/postgresql/postgresql.conf && \
729
729
echo "cron.database_name = 'postgres'" >> /etc/postgresql/postgresql.conf && \
730
730
echo "pljava.libjvm_location = '/usr/lib/jvm/java-11-openjdk-${TARGETARCH}/lib/server/libjvm.so'" >> /etc/postgresql/postgresql.conf && \
731
- echo "pgsodium.getkey_script= '/usr/lib/postgresql/${postgres_major }/bin/pgsodium_getkey.sh'" >> /etc/postgresql/postgresql.conf && \
731
+ echo "pgsodium.getkey_script= '/usr/lib/postgresql/${postgresql_major }/bin/pgsodium_getkey.sh'" >> /etc/postgresql/postgresql.conf && \
732
732
echo 'auto_explain.log_min_duration = 10s' >> /etc/postgresql/postgresql.conf
733
733
734
734
ENV POSTGRES_HOST=/var/run/postgresql
0 commit comments