簡體   English   中英

Hyperledger Fabric,Docker在重啟后不存儲數據

[英]Hyperledger Fabric with docker not storing data after restart

我用Docker鏡像設置了Hyperledger Fabric V0.6。 我寫了小鏈代碼程序並執行一些操作。 根據Hyperledger區塊鏈的請求存儲和獲取數據。

我重新開始我的鏈代碼程序,數據仍然存在。 Ofcouse這應該是預期的行為。

但是,當我使用命令docker-compose停止我的Hyperledger結構並使用docker-compose start再次啟動它然后啟動我的chaincode程序時,我發現在重啟之前寫入的整個數據都消失了。 我在區塊鏈中找不到任何數據。

如何避免Hyperledger的這種行為? 我在單個對等體/節點上運行它。 對於多個對等體,如果其中一個對等體重新啟動,則來自其他對等體的數據/事務將被復制到其上。 但考慮到最糟糕的情況,所有同行都會失敗。 這是否意味着我們放棄了所有數據?

按照官方的文檔 docker-compose down停止並刪除泊塢窗,撰寫文件中列出的所有集裝箱,它們的體積以及 (除非指定為外部,看看到的文檔)。

您可能希望使用docker-compose stop來停止容器 - 這樣,在docker-compose up之后,它將被保留。

關於數據持久性的注記

如果在對等容器或CouchDB容器上需要數據持久性,則可以選擇將docker-host中的目錄掛載到容器中的相關目錄中。 例如,您可以在docker-compose-base.yaml文件的對等容器規范中添加以下兩行:

volumes: - /var/hyperledger/peer0:/var/hyperledger/production

對於CouchDB容器,您可以在CouchDB容器規范中添加以下兩行:

volumes: - /var/hyperledger/couchdb0:/opt/couchdb/data

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM