# vim:set ft=dockerfile: FROM debian:wheezy # add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added RUN groupadd -r postgres && useradd -r -g postgres postgres RUN apt-get update && apt-get install -y curl RUN curl -o /usr/local/bin/gosu -SL 'https://github.com/tianon/gosu/releases/download/1.1/gosu' \ && chmod +x /usr/local/bin/gosu ENV PG_MAJOR %%PG_MAJOR%% ENV PG_VERSION %%PG_VERSION%% RUN echo 'deb http://apt.postgresql.org/pub/repos/apt/ wheezy-pgdg main' $PG_MAJOR > /etc/apt/sources.list.d/pgdg.list \ && curl -sSL https://www.postgresql.org/media/keys/ACCC4CF8.asc \ | apt-key add - ED6D65271AACF0FF15D123036FB2A1C265FFB764 RUN apt-get update \ && apt-get install -y postgresql-common \ && sed -ri 's/#(create_main_cluster) .*$/\1 = false/' /etc/postgresql-common/createcluster.conf \ && apt-get install -y \ postgresql-$PG_MAJOR=$PG_VERSION \ postgresql-contrib-$PG_MAJOR=$PG_VERSION RUN mkdir -p /var/run/postgresql && chown -R postgres /var/run/postgresql ENV PATH /usr/lib/postgresql/$PG_MAJOR/bin:$PATH ENV PGDATA /var/lib/postgresql/data VOLUME /var/lib/postgresql/data ADD ./docker-entrypoint.sh / ENTRYPOINT ["/docker-entrypoint.sh"] EXPOSE 5432 CMD ["postgres"]