PostgreSQL server不可用。等待5秒
我在创建PostgreSQL server不可用。等待5秒,postgresql,docker,zabbix,Postgresql,Docker,Zabbix,我在创建zabbix/zabbix web nginx pgsql:latest容器时遇到问题,该容器表示PostgreSQL服务器不可用。等待5秒,它不会在那里发生。我是docker的新手,我不知道为什么会发生这种情况,我在某个地方读到,赋予DB\u SERVER\u ROOT\u USER=“zabbix”价值的问题已经解决了,但没有起作用。我做错了什么 docker run -e DB_SERVER_ROOT_USER="zabbix" zabbix/zabbix-web-nginx-pg
zabbix/zabbix web nginx pgsql:latest
容器时遇到问题,该容器表示PostgreSQL服务器不可用。等待5秒,它不会在那里发生。我是docker的新手,我不知道为什么会发生这种情况,我在某个地方读到,赋予DB\u SERVER\u ROOT\u USER=“zabbix”
价值的问题已经解决了,但没有起作用。我做错了什么
docker run -e DB_SERVER_ROOT_USER="zabbix" zabbix/zabbix-web-nginx-pgsql:latest
** Deploying Zabbix frontend (nginx) with postgresql database
** Preparing the system
** Preparing Zabbix web-interface
*********************
* DB_SERVER_HOST: postgres-server
* DB_SERVER_PORT: 5432
* DB_SERVER_DBNAME: zabbix
* DB_SERVER_ZBX_USER: zabbix
* DB_SERVER_ZBX_PASS: zabbix
***********************
**** PostgreSQL server is not available. Waiting 5 seconds...
**** PostgreSQL server is not available. Waiting 5 seconds...
**** PostgreSQL server is not available. Waiting 5 seconds...
image是一个基于Nginx的Zabbix前端,支持PostgreSQL数据库。它里面没有PostgreSQL数据库。Zabbix web界面是Zabbix软件的一部分。它用于管理受监控的资源和查看监控统计信息
它应该作为Zabbix服务器()和postgresql()数据库的一个附件进行部署
有一个docker compose.yaml
示例,可以帮助您实现目标:
version: '3.1'
services:
postgres:
image: postgres
restart: always
environment:
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
zabbix-server:
image: zabbix/zabbix-server-pgsql
restart: always
environment:
DB_SERVER_HOST: postgres
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
depends_on:
- postgres
zabbix-web:
image: zabbix/zabbix-web-nginx-pgsql
restart: always
environment:
ZBX_SERVER_HOST: zabbix-server
DB_SERVER_HOST: postgres
POSTGRES_USER: zabbix
POSTGRES_PASSWORD: zabbix
POSTGRES_DB: zabbix
depends_on:
- postgres
- zabbix-server
ports:
- 8080:80
上面的docker compose.yaml
允许部署PostgreSQL、Zabbix服务器和Zabbix Web前端
docker compose up之后,Zabbix界面将在localhost:8080
上可用 请尝试使用--network=host运行zabbix容器(仅适用于linux)
我有一个类似的问题,在加入网络后解决了
你可以在这里找到更多细节。
在新版Docker中,使用“网络”被认为是正确的
步骤1:
docker网络创建zabbix网络
为方便起见,您可以为数据库创建卷:
docker卷创建zabbix postgres卷
步骤2:运行postgres映像
docker run-d-it--name zabbix postgres--network zabbix network-e
POSTGRES_USER=zabbix-e POSTGRES_PASSWORD=zabbix-v
zabbix posgres卷:/var/lib/postgresql/data postgres
步骤3:运行zabbix服务器映像
docker run-it-d--名称zabbix服务器--网络zabbix网络-p
10051:10051-e DB_服务器_主机=zabbix postgres-e postgres_用户=zabbix
-e POSTGRES_PASSWORD=zabbix zabbix/zabbix服务器pgsql
步骤4:
现在,您可以通过登录PostgreSQL来检查正确的连接
docker exec-it zabbix postgres sh
如果一切正常,那么您应该可以在文件./zbx_env/var/lib/postgresql/data/pg_hda.conf中看到在数据库中创建的149个表
# IPv4 local connections:
host all all 127.0.0.1/32 trust
改为
host all all 0.0.0.0/0 trust
非常感谢你的帮助。我有一个问题,这是一个单一的容器或几个,因为我看到它使用3个图像?问题是,我必须只创建一个使用Nginx和PostgreSQL操作的zabbix容器,以监视作为另一个容器的服务器。如果您已经有了zabbix服务器和PostgreSQL的容器,则只需要zabbix web
部件。例如,我可以装载到CentOS容器上,一个与Nginx和PostgreSQL一起工作的zabbix web服务器。请原谅,如果我的问题很明显或愚蠢,我是新手,有些事情我不太了解@尼科莱
host all all 0.0.0.0/0 trust