Update PostgreSQL container image to Buster

This commit is contained in:
Jan Dittberner 2019-11-04 22:25:09 +01:00
parent d231f90c90
commit a135fe9f73
3 changed files with 105 additions and 105 deletions

View file

@ -1,4 +1,4 @@
FROM debian:stretch FROM debian:buster
LABEL maintainer "Jan Dittberner <jan@dittberner.info>" LABEL maintainer "Jan Dittberner <jan@dittberner.info>"
RUN apt-get update \ RUN apt-get update \
@ -11,7 +11,7 @@ RUN apt-get update \
EXPOSE 5432 EXPOSE 5432
VOLUME /var/lib/postgresql/ VOLUME /var/lib/postgresql/
COPY pg_hba.conf /etc/postgresql/9.6/main/pg_hba.conf COPY pg_hba.conf /etc/postgresql/11/main/pg_hba.conf
COPY startup.sh /srv/ COPY startup.sh /srv/
ENTRYPOINT ["dumb-init"] ENTRYPOINT ["dumb-init"]

View file

@ -1,100 +1,100 @@
# PostgreSQL Client Authentication Configuration File # PostgreSQL Client Authentication Configuration File
# =================================================== # ===================================================
# #
# Refer to the "Client Authentication" section in the PostgreSQL # Refer to the "Client Authentication" section in the PostgreSQL
# documentation for a complete description of this file. A short # documentation for a complete description of this file. A short
# synopsis follows. # synopsis follows.
# #
# This file controls: which hosts are allowed to connect, how clients # This file controls: which hosts are allowed to connect, how clients
# are authenticated, which PostgreSQL user names they can use, which # are authenticated, which PostgreSQL user names they can use, which
# databases they can access. Records take one of these forms: # databases they can access. Records take one of these forms:
# #
# local DATABASE USER METHOD [OPTIONS] # local DATABASE USER METHOD [OPTIONS]
# host DATABASE USER ADDRESS METHOD [OPTIONS] # host DATABASE USER ADDRESS METHOD [OPTIONS]
# hostssl DATABASE USER ADDRESS METHOD [OPTIONS] # hostssl DATABASE USER ADDRESS METHOD [OPTIONS]
# hostnossl DATABASE USER ADDRESS METHOD [OPTIONS] # hostnossl DATABASE USER ADDRESS METHOD [OPTIONS]
# #
# (The uppercase items must be replaced by actual values.) # (The uppercase items must be replaced by actual values.)
# #
# The first field is the connection type: "local" is a Unix-domain # The first field is the connection type: "local" is a Unix-domain
# socket, "host" is either a plain or SSL-encrypted TCP/IP socket, # socket, "host" is either a plain or SSL-encrypted TCP/IP socket,
# "hostssl" is an SSL-encrypted TCP/IP socket, and "hostnossl" is a # "hostssl" is an SSL-encrypted TCP/IP socket, and "hostnossl" is a
# plain TCP/IP socket. # plain TCP/IP socket.
# #
# DATABASE can be "all", "sameuser", "samerole", "replication", a # DATABASE can be "all", "sameuser", "samerole", "replication", a
# database name, or a comma-separated list thereof. The "all" # database name, or a comma-separated list thereof. The "all"
# keyword does not match "replication". Access to replication # keyword does not match "replication". Access to replication
# must be enabled in a separate record (see example below). # must be enabled in a separate record (see example below).
# #
# USER can be "all", a user name, a group name prefixed with "+", or a # USER can be "all", a user name, a group name prefixed with "+", or a
# comma-separated list thereof. In both the DATABASE and USER fields # comma-separated list thereof. In both the DATABASE and USER fields
# you can also write a file name prefixed with "@" to include names # you can also write a file name prefixed with "@" to include names
# from a separate file. # from a separate file.
# #
# ADDRESS specifies the set of hosts the record matches. It can be a # ADDRESS specifies the set of hosts the record matches. It can be a
# host name, or it is made up of an IP address and a CIDR mask that is # host name, or it is made up of an IP address and a CIDR mask that is
# an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that # an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that
# specifies the number of significant bits in the mask. A host name # specifies the number of significant bits in the mask. A host name
# that starts with a dot (.) matches a suffix of the actual host name. # that starts with a dot (.) matches a suffix of the actual host name.
# Alternatively, you can write an IP address and netmask in separate # Alternatively, you can write an IP address and netmask in separate
# columns to specify the set of hosts. Instead of a CIDR-address, you # columns to specify the set of hosts. Instead of a CIDR-address, you
# can write "samehost" to match any of the server's own IP addresses, # can write "samehost" to match any of the server's own IP addresses,
# or "samenet" to match any address in any subnet that the server is # or "samenet" to match any address in any subnet that the server is
# directly connected to. # directly connected to.
# #
# METHOD can be "trust", "reject", "md5", "password", "gss", "sspi", # METHOD can be "trust", "reject", "md5", "password", "gss", "sspi",
# "ident", "peer", "pam", "ldap", "radius" or "cert". Note that # "ident", "peer", "pam", "ldap", "radius" or "cert". Note that
# "password" sends passwords in clear text; "md5" is preferred since # "password" sends passwords in clear text; "md5" is preferred since
# it sends encrypted passwords. # it sends encrypted passwords.
# #
# OPTIONS are a set of options for the authentication in the format # OPTIONS are a set of options for the authentication in the format
# NAME=VALUE. The available options depend on the different # NAME=VALUE. The available options depend on the different
# authentication methods -- refer to the "Client Authentication" # authentication methods -- refer to the "Client Authentication"
# section in the documentation for a list of which options are # section in the documentation for a list of which options are
# available for which authentication methods. # available for which authentication methods.
# #
# Database and user names containing spaces, commas, quotes and other # Database and user names containing spaces, commas, quotes and other
# special characters must be quoted. Quoting one of the keywords # special characters must be quoted. Quoting one of the keywords
# "all", "sameuser", "samerole" or "replication" makes the name lose # "all", "sameuser", "samerole" or "replication" makes the name lose
# its special character, and just match a database or username with # its special character, and just match a database or username with
# that name. # that name.
# #
# This file is read on server startup and when the postmaster receives # This file is read on server startup and when the postmaster receives
# a SIGHUP signal. If you edit the file on a running system, you have # a SIGHUP signal. If you edit the file on a running system, you have
# to SIGHUP the postmaster for the changes to take effect. You can # to SIGHUP the postmaster for the changes to take effect. You can
# use "pg_ctl reload" to do that. # use "pg_ctl reload" to do that.
# Put your actual configuration here # Put your actual configuration here
# ---------------------------------- # ----------------------------------
# #
# If you want to allow non-local connections, you need to add more # If you want to allow non-local connections, you need to add more
# "host" records. In that case you will also need to make PostgreSQL # "host" records. In that case you will also need to make PostgreSQL
# listen on a non-local interface via the listen_addresses # listen on a non-local interface via the listen_addresses
# configuration parameter, or via the -i or -h command line switches. # configuration parameter, or via the -i or -h command line switches.
# DO NOT DISABLE! # DO NOT DISABLE!
# If you change this first entry you will need to make sure that the # If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method. # database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic # Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks). # maintenance (custom daily cronjobs, replication, and similar tasks).
# #
# Database administrative login by Unix domain socket # Database administrative login by Unix domain socket
local all postgres peer local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD # TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only # "local" is for Unix domain socket connections only
local all all peer local all all peer
# IPv4 local connections: # IPv4 local connections:
host all all 127.0.0.1/32 md5 host all all 127.0.0.1/32 md5
# IPv6 local connections: # IPv6 local connections:
host all all ::1/128 md5 host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the # Allow replication connections from localhost, by a user with the
# replication privilege. # replication privilege.
#local replication postgres peer #local replication all peer
#host replication postgres 127.0.0.1/32 md5 #host replication all 127.0.0.1/32 md5
#host replication postgres ::1/128 md5 #host replication all ::1/128 md5
host all all all md5 host all all all md5

View file

@ -2,7 +2,7 @@
set -e set -e
/usr/bin/pg_ctlcluster 9.6 main start /usr/bin/pg_ctlcluster 11 main start
echo -n "Waiting for database to become ready ." echo -n "Waiting for database to become ready ."
while ! pg_isready -q; do sleep 1; echo -n "."; done while ! pg_isready -q; do sleep 1; echo -n "."; done
@ -18,5 +18,5 @@ GRANT CREATE, CONNECT ON DATABASE gnuviechadmin TO gnuviechadmin;
EOF EOF
fi fi
/usr/bin/pg_ctlcluster 9.6 main stop --foreground /usr/bin/pg_ctlcluster 11 main stop --foreground
/usr/bin/pg_ctlcluster 9.6 main start --foreground -o '-h 0.0.0.0' /usr/bin/pg_ctlcluster 11 main start --foreground -o '-h 0.0.0.0'