Fabric 链码实例化失败:容器退出问题如何解决?

fabric 链码实例化失败:容器退出问题如何解决?

fabric 链码实例化出现错误:解决容器退出问题

fabric 中,实例化链码时遇到了容器退出错误,尽管链码安装成功。以下是解决此问题的步骤:

错误信息指出:"chaincode registration failed: container exited with 0",这表示容器在启动后立即终止。

通过检查日志,发现问题是由 dns 问题引起的。容器无法解析 dns 名称,因此导致 chaincode 无法注册。

解决此问题需要编辑 /lib/systemd/system/docker.service 文件:

  1. 追加以下参数到 execstart 行后:

    --dns=10.96.0.10 --dns=192.168.0.1 --dns-search default.svc.cluster.local --dns-search svc.cluster.local --dns-opt ndots:2 --dns-opt timeout:2 --dns-opt attempts:2
  2. 保存并重新加载 systemctl:

    systemctl daemon-reload && systemctl restart docker
  3. 在所有 k8s 工作节点上重复此过程。

修改完 docker 配置并重启服务后,chaincode 实例化过程应该可以正常完成。

以上就是Fabric 链码实例化失败:容器退出问题如何解决?的详细内容,更多请关注其它相关文章!