do repmgr manual

This commit is contained in:
Bernhard Radermacher
2026-02-18 14:03:36 +01:00
parent 2614bee096
commit d56ccc7dbe

View File

@@ -110,43 +110,43 @@ RUN set -ex; \
find /usr -name '*.pyc' -type f -exec bash -c 'for pyc; do dpkg -S "$pyc" &> /dev/null || rm -vf "$pyc"; done' -- '{}' +; \
postgres --version
RUN set -eux; \
savedAptMark="$(apt-mark showmanual)"; \
apt-get update; \
apt-get install -y --no-install-recommends ca-certificates wget libjson-c-dev libcurlpp-dev; \
apt-get build-dep -y "postgresql-$PG_MAJOR=$PG_VERSION"; \
rm -rf /var/lib/apt/lists/*; \
tempDir="$(mktemp -d)"; \
nproc="$(nproc)"; \
cp /usr/include/postgresql/15/server/pg_config.h /usr/include/postgresql/; \
cd "$tempDir"; \
wget https://github.com/EnterpriseDB/repmgr/releases/download/v5.5.0/repmgr-5.5.0.tar.gz; \
echo "c5633c351f3a0627a53ac1828ac7581ee74c7e0c repmgr-5.5.0.tar.gz" | sha1sum --check && \
tar -xvzf repmgr-5.5.0.tar.gz; \
cd repmgr; \
./configure && make -j "$nproc" install; \
apt-mark auto '.*' > /dev/null; \
[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false
RUN set -eux; \
dpkg-divert --add --rename --divert "/usr/share/postgresql/postgresql.conf.sample.dpkg" "/usr/share/postgresql/$PG_MAJOR/postgresql.conf.sample"; \
cp -v /usr/share/postgresql/postgresql.conf.sample.dpkg /usr/share/postgresql/postgresql.conf.sample; \
ln -sv ../postgresql.conf.sample "/usr/share/postgresql/$PG_MAJOR/"; \
sed -ri "s!^#?(listen_addresses)\s*=\s*\S+.*!\1 = '*'!" /usr/share/postgresql/postgresql.conf.sample; \
grep -F "listen_addresses = '*'" /usr/share/postgresql/postgresql.conf.sample
RUN install --verbose --directory --owner postgres --group postgres --mode 3777 /var/run/postgresql
ENV PGDATA=/var/lib/postgresql/data
RUN install --verbose --directory --owner postgres --group postgres --mode 1777 "$PGDATA"
VOLUME /var/lib/postgresql/data
COPY docker-entrypoint.sh docker-ensure-initdb.sh /usr/local/bin/
RUN ln -sT docker-ensure-initdb.sh /usr/local/bin/docker-enforce-initdb.sh
#RUN set -eux; \
# savedAptMark="$(apt-mark showmanual)"; \
# apt-get update; \
# apt-get install -y --no-install-recommends ca-certificates wget libjson-c-dev libcurlpp-dev; \
# apt-get build-dep -y "postgresql-$PG_MAJOR=$PG_VERSION"; \
# rm -rf /var/lib/apt/lists/*; \
# tempDir="$(mktemp -d)"; \
# nproc="$(nproc)"; \
# cp /usr/include/postgresql/15/server/pg_config.h /usr/include/postgresql/; \
# cd "$tempDir"; \
# wget https://github.com/EnterpriseDB/repmgr/releases/download/v5.5.0/repmgr-5.5.0.tar.gz; \
# echo "c5633c351f3a0627a53ac1828ac7581ee74c7e0c repmgr-5.5.0.tar.gz" | sha1sum --check && \
# tar -xvzf repmgr-5.5.0.tar.gz; \
# cd repmgr; \
# ./configure && make -j "$nproc" install; \
# apt-mark auto '.*' > /dev/null; \
# [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
# apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false
#
#RUN set -eux; \
# dpkg-divert --add --rename --divert "/usr/share/postgresql/postgresql.conf.sample.dpkg" "/usr/share/postgresql/$PG_MAJOR/postgresql.conf.sample"; \
# cp -v /usr/share/postgresql/postgresql.conf.sample.dpkg /usr/share/postgresql/postgresql.conf.sample; \
# ln -sv ../postgresql.conf.sample "/usr/share/postgresql/$PG_MAJOR/"; \
# sed -ri "s!^#?(listen_addresses)\s*=\s*\S+.*!\1 = '*'!" /usr/share/postgresql/postgresql.conf.sample; \
# grep -F "listen_addresses = '*'" /usr/share/postgresql/postgresql.conf.sample
#
#RUN install --verbose --directory --owner postgres --group postgres --mode 3777 /var/run/postgresql
#
#ENV PGDATA=/var/lib/postgresql/data
#
#RUN install --verbose --directory --owner postgres --group postgres --mode 1777 "$PGDATA"
#
#VOLUME /var/lib/postgresql/data
#
#COPY docker-entrypoint.sh docker-ensure-initdb.sh /usr/local/bin/
#
#RUN ln -sT docker-ensure-initdb.sh /usr/local/bin/docker-enforce-initdb.sh
ENTRYPOINT ["/bin/bash"]