Hyperledger Explorer配置启动报错:数据库角色hppoc不存在问题排查求助
问题定位
- 核心错误:PostgreSQL角色
hppoc不存在。你在docker-compose.yaml中为explorerdb配置的DATABASE_*前缀环境变量是explorer服务的识别参数,PostgreSQL镜像仅识别POSTGRES_*前缀的初始化参数,所以启动时不会自动创建hppoc用户和fabricexplorer数据库,导致explorer连接数据库失败。 - 潜在错误:
test-network.json中开启了TLS(tlsEnable: true),但peer访问地址用的是明文协议grpc://,数据库问题修复后会出现peer连接失败问题。 - 日志中
false 'ssl-certs'提示为非关键警告,未配置自定义SSL证书不影响服务运行,可忽略。
修复步骤
- 第一步:清理历史残留数据,避免旧volume缓存的无效数据库数据干扰
执行命令:docker-compose down -v - 第二步:修改
docker-compose.yaml中explorerdb服务的环境变量配置,替换为PostgreSQL可识别的参数
将explorerdb的environment段从:
修改为:environment: - DATABASE_DATABASE=fabricexplorer - DATABASE_USERNAME=hppoc - DATABASE_PASSWORD=passwordenvironment: - POSTGRES_DB=fabricexplorer - POSTGRES_USER=hppoc - POSTGRES_PASSWORD=password - 第三步:修改
test-network.json中的peer访问协议,匹配TLS配置
将peer的url配置从:
修改为:"url": "grpc://peer0.org1.produce.com:7051""url": "grpcs://peer0.org1.produce.com:7051" - 第四步:重新启动服务
执行命令:docker-compose up -d
验证
启动后等待60秒左右,访问http://localhost:8080,使用配置的管理员账号exploreradmin、密码exploreradminpw登录,即可查看Fabric网络的链码、区块、交易信息。
内容的提问来源于stack exchange,提问作者김승빈
相关产品推荐
相关产品推荐

