You've already forked onec-docker
mirror of
https://github.com/IgorKilipenko/onec-docker.git
synced 2026-04-24 03:38:25 +02:00
56 lines
1.5 KiB
Docker
56 lines
1.5 KiB
Docker
FROM ubuntu:22.04
|
|
|
|
ENV PG_VERSION=1c-16
|
|
ENV PG_USER=999
|
|
ENV PG_USER_PASSWORD=Secret
|
|
ENV PG_HOME=/var/lib/pgpro/${PG_VERSION}
|
|
|
|
ENV PG_BINDIR=/opt/pgpro/${PG_VERSION}/bin
|
|
ENV PG_DATADIR=${PG_HOME}/data
|
|
ENV PG_DEFCONFIG=/etc/default/postgrespro-${PG_VERSION}
|
|
|
|
ENV LANG ru_RU.UTF-8
|
|
|
|
RUN groupadd postgres --gid=${PG_USER} \
|
|
&& useradd --gid postgres --uid=${PG_USER} postgres
|
|
|
|
RUN mkdir -p ${PG_HOME} \
|
|
&& chown -R postgres:postgres ${PG_HOME}
|
|
|
|
RUN mkdir -p ${PG_DATADIR} \
|
|
&& chown -R postgres:postgres ${PG_DATADIR} \
|
|
&& chmod 1777 ${PG_DATADIR}
|
|
|
|
RUN set -xe \
|
|
&& apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
wget
|
|
|
|
RUN wget https://repo.postgrespro.ru/${PG_VERSION}/keys/pgpro-repo-add.sh \
|
|
&& sh pgpro-repo-add.sh
|
|
|
|
RUN set -xe \
|
|
&& apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
postgrespro-1c-16 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN locale-gen ${LANG} \
|
|
&& update-locale
|
|
|
|
RUN ${PG_BINDIR}/pg-setup initdb --locale=${LANG} --pgdata=${PG_DATADIR}
|
|
|
|
USER postgres
|
|
EXPOSE 5432/tcp
|
|
VOLUME ${PG_HOME}
|
|
|
|
# set password for postgres
|
|
RUN ${PG_BINDIR}/pg_ctl -D ${PG_DATADIR} start \
|
|
&& psql -v ON_ERROR_STOP=1 --username postgres --no-password --no-psqlrc -c "ALTER USER postgres WITH PASSWORD '${PG_USER_PASSWORD}';" \
|
|
&& ${PG_BINDIR}/pg_ctl -D ${PG_DATADIR} stop
|
|
|
|
RUN echo "Starting PostgreSQL ${PG_VERSION}..."
|
|
|
|
CMD ${PG_BINDIR}/postgres -D ${PG_DATADIR} -p 5432
|