diff --git a/10/alpine/Dockerfile b/10/alpine/Dockerfile index 76c5c5f618..bea8f1c794 100644 --- a/10/alpine/Dockerfile +++ b/10/alpine/Dockerfile @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: -FROM alpine:3.10 +FROM alpine:3.11 -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down diff --git a/11/alpine/Dockerfile b/11/alpine/Dockerfile index ad1fb13690..414d58c688 100644 --- a/11/alpine/Dockerfile +++ b/11/alpine/Dockerfile @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: -FROM alpine:3.10 +FROM alpine:3.11 -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down @@ -54,7 +50,7 @@ RUN set -ex \ libxml2-dev \ libxslt-dev \ linux-headers \ - llvm8-dev clang g++ \ + llvm9-dev clang g++ \ make \ # openldap-dev \ openssl-dev \ diff --git a/12/alpine/Dockerfile b/12/alpine/Dockerfile index 082735446d..c2586bec7f 100644 --- a/12/alpine/Dockerfile +++ b/12/alpine/Dockerfile @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: -FROM alpine:3.10 +FROM alpine:3.11 -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down @@ -54,7 +50,7 @@ RUN set -ex \ libxml2-dev \ libxslt-dev \ linux-headers \ - llvm8-dev clang g++ \ + llvm9-dev clang g++ \ make \ # openldap-dev \ openssl-dev \ diff --git a/9.4/alpine/Dockerfile b/9.4/alpine/Dockerfile index 97c7a48be4..a03de96134 100644 --- a/9.4/alpine/Dockerfile +++ b/9.4/alpine/Dockerfile @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: -FROM alpine:3.10 +FROM alpine:3.11 -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down diff --git a/9.5/alpine/Dockerfile b/9.5/alpine/Dockerfile index 7cfaaad99f..eea27143a7 100644 --- a/9.5/alpine/Dockerfile +++ b/9.5/alpine/Dockerfile @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: -FROM alpine:3.10 +FROM alpine:3.11 -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down diff --git a/9.6/alpine/Dockerfile b/9.6/alpine/Dockerfile index e349927093..b631b0b50c 100644 --- a/9.6/alpine/Dockerfile +++ b/9.6/alpine/Dockerfile @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: -FROM alpine:3.10 +FROM alpine:3.11 -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index 877d8ee452..e1b4a6f947 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -1,17 +1,13 @@ # vim:set ft=dockerfile: FROM alpine:%%ALPINE-VERSION%% -# alpine includes "postgres" user/group in base install -# /etc/passwd:22:postgres:x:70:70::/var/lib/postgresql:/bin/sh -# /etc/group:34:postgres:x:70: -# the home directory for the postgres user, however, is not created by default -# see https://github.com/docker-library/postgres/issues/274 -RUN set -ex; \ - postgresHome="$(getent passwd postgres)"; \ - postgresHome="$(echo "$postgresHome" | cut -d: -f6)"; \ - [ "$postgresHome" = '/var/lib/postgresql' ]; \ - mkdir -p "$postgresHome"; \ - chown -R postgres:postgres "$postgresHome" +# 70 is the standard uid/gid for "postgres" in Alpine +# https://git.alpinelinux.org/aports/tree/main/postgresql/postgresql.pre-install?h=3.11-stable +RUN set -eux; \ + addgroup -g 70 -S postgres; \ + adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql postgres; \ + mkdir -p /var/lib/postgresql; \ + chown -R postgres:postgres /var/lib/postgresql # su-exec (gosu-compatible) is installed further down @@ -54,7 +50,7 @@ RUN set -ex \ libxml2-dev \ libxslt-dev \ linux-headers \ - llvm8-dev clang g++ \ + llvm9-dev clang g++ \ make \ # openldap-dev \ openssl-dev \ diff --git a/update.sh b/update.sh index 528fbce56d..fe98610e51 100755 --- a/update.sh +++ b/update.sh @@ -21,7 +21,7 @@ declare -A debianSuite=( [10]='stretch-slim' [11]='stretch-slim' ) -defaultAlpineVersion='3.10' +defaultAlpineVersion='3.11' declare -A alpineVersion=( #[9.6]='3.5' )