我有一个Kong API Gateway容器和一个postgres容器,我需要在运行迁移之前从Kong容器中检查postgres是否已启动并准备好。我想使用
我尝试从自定义Kong镜像中执行这些命令:
RUN yum install postgresql -y && yum clean all
在我的Dockerfile中安装基于官方Kong镜像的自定义镜像中的postgres客户端工具,并使用psql
或pg_isready
来实现这一目标。我创建了一个名为polling
的postgres用户,密码为空,专门用于通过这两个工具检查服务器状态。但是它们都无法正常工作。我尝试从自定义Kong镜像中执行这些命令:
psql. 命令
psql -h postgres -U polling -w -c '\l'
失败,出现错误psql: fe_sendauth: no password supplied
。但是用户没有密码。我做错了什么?完整的使用psql检查服务器是否就绪的shell脚本在此处描述。pg_isready. 我不知道如何将此实用程序单独安装到基于官方Kong映像的自定义映像中,而官方Kong映像又基于
centos:7
映像,postgresql
软件包不包括pg_isready
。只有这些实用程序已安装并可在/usr/bin
中找到:pg_config
、pg_dump
、pg_dumpall
、pg_restore
、psql
。如何安装pg_isready
?我不想在Kong映像中安装完整的服务器。