[BUGS] Postgresql 9.6.5 not working in Windows Docker containers (bothNanoserver and WindowsServerCore base images) - Mailing list pgsql-bugs

From Paul Mendoza
Subject [BUGS] Postgresql 9.6.5 not working in Windows Docker containers (bothNanoserver and WindowsServerCore base images)
Date
Msg-id CAL5Lp9UBsTnpr5AJ9TTDV6S0TuNVU2wZs7M_NSjO_GVfUmkCwg@mail.gmail.com
Whole thread Raw
List pgsql-bugs
Running Postgresql in a Windows Docker container seems to be impossible at the moment. 

I downloaded the EnterpriseDB binaries, setup a Docker file to extract the binaries into a Windows Docker container and then tried to run initdb.exe. I can't get past that step. Notice the second to last line in the output has an error. 


Inline image 1

DOCKERFILE

FROM microsoft/nanoserver
LABEL maintainer="pmendoza@dragnettech.com"

COPY ["postgresql-9.6.5-1-windows-x64-binaries.zip", "c:/"]

RUN powershell.exe -Command \
Expand-Archive c:\postgresql-9.6.5-1-windows-x64-binaries.zip -DestinationPath c:\;

EXPOSE 5432


Directory Layout On Host
It looks like this in the directory.

Inline image 2

Other Ideas/Permutations I Tried Which Didn't Work

  • Tried using microsoft/windowsservercore as the base image instead. initdb.exe doesn't output anything. Not even the the error message you see in the above screenshot.
  • Ran initdb on my local computer and then dropped the pgdata files into the volume and tried running "postgres.exe" but that immediately exited with no output.
    • Inline image 3
  • Tried both Docker 17.09 (stable) and 17.10 (edge)
  • Tried an older Postgres 5.9 version of binaries


Environment Details
Docker 17.10 
Image: microsoft/nanoserver
Host OS: Windows 10
Postgres Version: postgresql-9.6.5

Paul MendozaCEO

pgsql-bugs by date:

Previous
From: Ben Chobot
Date:
Subject: [BUGS] pg_logical_slot_peek_changes crashes postgres when called from insidepl/pgsql
Next
From: Michael Paquier
Date:
Subject: Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql