Subject: Re: Running psql in a docker container

From: Tom Lane <[email-masked]>
Date: Thu, 11 Jul 2024 14:20:43 -0400

H <[email-masked]> writes:
> Good question! ”No success” meant that I have not been able to figure out how to have new databases default to en_US.UTF-8, instead they default to C.UTF-8.

The default for an installation is determined at initdb time, either
with an explicit locale switch or from the environment locale
settings.

			regards, tom lane

---

From: H <[email-masked]>
Date: Thu, 11 Jul 2024 14:28:49 -0400

On July 11, 2024 2:20:43 PM EDT, Tom Lane <[email-masked]> wrote:
>> Good question! ”No success” meant that I have not been able to figure
>out how to have new databases default to en_US.UTF-8, instead they
>default to C.UTF-8.
>

Understood but how should formulate the initdb statement to accomplish what I want on pgsql 16 since the syntax I used for pgsql 13 does not work in my container?

---

From: Tom Lane <[email-masked]>
Date: Thu, 11 Jul 2024 15:48:42 -0400

> Understood but how should formulate the initdb statement to accomplish what I want on pgsql 16 since the syntax I used for pgsql 13 does not work in my container?

You still haven't shown us the actual error message, so we're all
just guessing.

I will offer a guess though.  This *should* work, since Rocky 9
is a direct descendant of RHEL/CentOS 7.  The only reason I can
think why it wouldn't is that you haven't installed the OS package
that defines en_US.UTF-8.  Try doing "locale -a" and see if
en_US.UTF-8 is among the listed locales.

On my RHEL8 box, it looks like glibc-locale-source is what
provides most non-C locales.

			regards, tom lane

---

From: H <[email-masked]>
Date: Thu, 11 Jul 2024 16:25:39 -0400

On July 11, 2024 3:48:42 PM EDT, Tom Lane <[email-masked]> wrote:
>> Understood but how should formulate the initdb statement to
>accomplish what I want on pgsql 16 since the syntax I used for pgsql 13
>does not work in my container?
>

I run locale på in the container and found that the appropriate locale is called en_US.utf8, ie. not en_US.UTF-8...

Problem now solved! Thank you all!