I have a Kong API Gateway container and a postgres container and I need to check whether postgres has started up and ready from the Kong container before running the migrations. I was thinking of installing the postgres client utilities into a custom image based on the official Kong image using RUN yum install postgresql -y && yum clean all in my Dockerfile and using either psql or pg_isready to achieve this. I've created a postgres user called polling with an empty password specifically for checking the status of the server by these two utilities. Neither of them work.
I tried to execute these commands from the custom Kong image:
psql. The command
psql -h postgres -U polling -w -c '\l'fails with the errorpsql: fe_sendauth: no password supplied. But the user has no password. What am I doing wrong? The full shell script checking whether the server is ready using psql is described here.pg_isready. I don't get how to install this utility separately into a custom image based on the official Kong image which in turn based on the
centos:7image, thepostgresqlpackage doesn't includepg_isready. Only these utilities are installed and can be found in/usr/bin:pg_config,pg_dump,pg_dumpall,pg_restore,psql. How to installpg_isready? I don't want to have the full server installation in the Kong image.