From 2aad0d4f0dc9fb6b980765435ee5d36e6f52996a Mon Sep 17 00:00:00 2001 From: wglambert Date: Tue, 18 Oct 2022 11:45:35 -0700 Subject: [PATCH] Add Alpine locale information for Postgres 15 (#2220) --- postgres/content.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/postgres/content.md b/postgres/content.md index 1ac914e85..b18db33ce 100644 --- a/postgres/content.md +++ b/postgres/content.md @@ -180,7 +180,13 @@ ENV LANG de_DE.utf8 Since database initialization only happens on container startup, this allows us to set the language before it is created. -Also of note, Alpine-based variants do *not* support locales; see ["Character sets and locale" in the musl documentation](https://wiki.musl-libc.org/functional-differences-from-glibc.html#Character-sets-and-locale) for more details. +Also of note, Alpine-based variants starting with Postgres 15 support [ICU locales](https://www.postgresql.org/docs/15/locale.html#id-1.6.11.3.7). Previous Postgres versions based on alpine do *not* support locales; see ["Character sets and locale" in the musl documentation](https://wiki.musl-libc.org/functional-differences-from-glibc.html#Character-sets-and-locale) for more details. + +You can set locales in the Alpine-based images with `POSTGRES_INITDB_ARGS` to set a different locale. The following example will set the default locale for a newly initialized database to `de_DE.utf8`: + +```console +$ docker run -d -e LANG=de_DE.utf8 -e POSTGRES_INITDB_ARGS="--locale-provider=icu --icu-locale=de-DE" -e POSTGRES_PASSWORD=mysecretpassword %%IMAGE%%:15-alpine +``` ## Additional Extensions