BUG #17436: Initializing and starting with Dockerfile fails

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: dkeate(at)gmail(dot)com
Subject: BUG #17436: Initializing and starting with Dockerfile fails
Date: 2022-03-12 23:40:28
Message-ID: 17436-b8a4a3dd58c54838@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 17436
Logged by: Dustin Keate
Email address: dkeate(at)gmail(dot)com
PostgreSQL version: 14.2
Operating system: Docker/Raspberry Pi OS 64 bit
Description:

Dockerfile contents:

FROM postgres
USER postgres
RUN initdb
RUN pg_ctl -D /var/lib/postgresql/data -l /var/lib/postgresql/data/logfile
start
RUN pg_restore --dbname=dvdrental --create --verbose /var/dvdrental.tar

executing 'docker build .' throws the following error:

Step 4/5 : RUN pg_ctl -D /var/lib/postgresql/data -l
/var/lib/postgresql/data/logfile start
---> Running in 8561ab2addbe
pg_ctl: directory "/var/lib/postgresql/data" is not a database cluster
directory

However, starting a new container and running identical commands works.

docker run -it postgres sh
gosu postgres sh
initdb
pg_ctl -D /var/lib/postgresql/data -l /var/lib/postgresql/data/logfile
start
waiting for server to start.... done
server started

To me, these are identical processes, but I may be wrong because docker is
docker.

There are no volumes attached. These are the only instructions and I
couldn't distill this problem any farther. These are the only commands I am
giving. Something is changing in the intermediate images, somehow.

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Julien Rouhaud 2022-03-13 02:04:38 Re: BUG #17436: Initializing and starting with Dockerfile fails
Previous Message Andres Freund 2022-03-12 21:49:10 Re: BUG #17255: Server crashes in index_delete_sort_cmp() due to race condition with vacuum