我使用 docker 镜像设置了 Hyperledger Fabric V0.6。我编写了小型链码程序并执行一些操作。根据 Hyperledger 区 block 链的请求存储和获取数据。
我重新启动我的链码程序,数据仍然存在。当然这应该是预期的行为。
但是当我使用命令 docker-compose down 停止我的 Hyperledger 结构并使用 docker-compose start 再次启动它,然后启动我的链码程序时,我发现重新启动之前写入的全部数据都消失了。我在区 block 链中找不到任何数据。
如何避免 Hyperledger 的这种行为?我在单个对等点/节点上运行它。对于多个对等点,如果其中一个对等点重新启动,则来自其他对等点的数据/交易将被复制到其上。但请考虑最坏的情况,即所有同行均出现故障。这是否意味着我们丢失了所有数据?
最佳答案
据官方docs docker-compose down
停止并删除 docker-compose 文件中列出的所有容器及其卷(除非指定为外部,请查看文档)。
您可能希望使用docker-compose stop
来停止容器 - 这样在docker-compose up
之后,它们的数据将被保留。
关于docker - Hyperledger Fabric 与 docker 重启后不存储数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43330569/