2023-09-21 16:42:53 +02:00
|
|
|
# SPDX-License-Identifier: MIT
|
2023-09-28 17:04:56 +02:00
|
|
|
|
|
|
|
# Copyright (c) 2023 SUSE LLC
|
|
|
|
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon.
|
|
|
|
|
|
|
|
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
|
|
|
|
# It is maintained by the BCI team and generated by
|
|
|
|
# https://github.com/SUSE/BCI-dockerfile-generator
|
|
|
|
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
|
|
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
|
|
|
|
|
|
|
|
|
2023-09-21 16:42:53 +02:00
|
|
|
#!BuildTag: opensuse/postgres:16
|
|
|
|
#!BuildTag: opensuse/postgres:16-%RELEASE%
|
|
|
|
#!BuildTag: opensuse/postgres:%%pg_version%%
|
|
|
|
#!BuildTag: opensuse/postgres:%%pg_version%%-%RELEASE%
|
|
|
|
|
|
|
|
FROM opensuse/tumbleweed:latest
|
|
|
|
|
|
|
|
MAINTAINER openSUSE (https://www.opensuse.org/)
|
|
|
|
|
|
|
|
# Define labels according to https://en.opensuse.org/Building_derived_containers
|
|
|
|
# labelprefix=org.opensuse.application.postgres
|
|
|
|
LABEL org.opencontainers.image.title="openSUSE Tumbleweed PostgreSQL 16"
|
|
|
|
LABEL org.opencontainers.image.description="PostgreSQL 16 container based on the openSUSE Tumbleweed Base Container Image."
|
|
|
|
LABEL org.opencontainers.image.version="16"
|
|
|
|
LABEL org.opencontainers.image.url="https://www.opensuse.org"
|
|
|
|
LABEL org.opencontainers.image.created="%BUILDTIME%"
|
|
|
|
LABEL org.opencontainers.image.vendor="openSUSE Project"
|
|
|
|
LABEL org.opencontainers.image.source="%SOURCEURL%"
|
|
|
|
LABEL org.opensuse.reference="registry.opensuse.org/opensuse/postgres:16-%RELEASE%"
|
|
|
|
LABEL org.openbuildservice.disturl="%DISTURL%"
|
|
|
|
LABEL org.opensuse.lifecycle-url="https://en.opensuse.org/Lifetime"
|
|
|
|
LABEL org.opensuse.release-stage="released"
|
|
|
|
|
|
|
|
# endlabelprefix
|
|
|
|
|
|
|
|
RUN set -euo pipefail; zypper -n in --no-recommends postgresql16-server; zypper -n clean; rm -rf /var/log/*
|
|
|
|
ENV LANG="en_US.utf8"
|
|
|
|
ENV PG_MAJOR="16"
|
|
|
|
ENV PG_VERSION="%%pg_version%%"
|
|
|
|
ENV PGDATA="/var/lib/pgsql/data"
|
|
|
|
|
|
|
|
ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
|
|
|
|
CMD ["postgres"]
|
|
|
|
EXPOSE 5432
|
|
|
|
COPY docker-entrypoint.sh /usr/local/bin/
|
|
|
|
RUN set -euo pipefail; chmod +x /usr/local/bin/docker-entrypoint.sh; \
|
|
|
|
sed -i -e 's/exec gosu postgres "/exec setpriv --reuid=postgres --regid=postgres --clear-groups -- "/g' /usr/local/bin/docker-entrypoint.sh; \
|
|
|
|
mkdir /docker-entrypoint-initdb.d; \
|
|
|
|
install -d -m 0700 -o postgres -g postgres $PGDATA; \
|
|
|
|
sed -ri "s|^#?(listen_addresses)\s*=\s*\S+.*|\1 = '*'|" /usr/share/postgresql16/postgresql.conf.sample
|
|
|
|
|
|
|
|
STOPSIGNAL SIGINT
|
|
|
|
HEALTHCHECK --interval=10s --start-period=10s --timeout=5s \
|
|
|
|
CMD pg_isready -U ${POSTGRES_USER:-postgres} -h localhost -p 5432
|
|
|
|
|
|
|
|
VOLUME $PGDATA
|