Re: postgres and initdb not working inside docker

From: Feike Steenbergen <feikesteenbergen(at)gmail(dot)com>
To: Roffild <roffild(at)hotmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Daniel Gustafsson <daniel(at)yesql(dot)se>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: postgres and initdb not working inside docker
Date: 2022-05-28 17:12:38
Message-ID: CAK_s-G0xQj0NbePdAmyd3SBw_F=C+s1qTLTCBihCemRttXM5iw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, May 28, 2022, 18:35 Roffild <roffild(at)hotmail(dot)com> wrote:

> But the volume mount has a limitation with chmod 755. I don't want to
> write the database directly to the container.

Using a $PGDATA subdirectory in a mounted Volume allows you to run with 0700
and also retain this limitation you mention. I don't believe this
limitation is a limitation
of Docker - AFAIK Docker uses the permissions from the Host Directory for
the Mount.

In my experience we have been using (since 2014?) a subdirectory of the
mounted Volume
and run a statement similar to this on startup of your container, before
starting postgres/initdb or the like

install -o postgres -g postgres -d -m 0700 "${PGDATA}"

> The world has changed! And the old standards don't work...

There's enough people running Postgres in Docker containers in production
for almost a decade.
It does work!

Kind regards,

Feike Steenbergen

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniel Verite 2022-05-28 17:18:51 Re: ICU_LOCALE set database default icu collation but not working as intended.
Previous Message David G. Johnston 2022-05-28 17:11:27 Re: postgres and initdb not working inside docker