fabric啟動節點var/hyperledger/production: permission denied

場景

我在節點的compose文件中進行了數據掛載:

 - ../../data/bank1/peer1:/tmp/hyperledger/bank1/peer1

但是運行是依然報錯為var/hyperledger/production的權限問題,并且我也已經對../../data/bank1/peer1目錄設置了操作權限

services:peer1-bank1:container_name: peer1-bank1image: hyperledger/fabric-peeruser: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}"environment:- CORE_PEER_ID=peer1-bank1- CORE_PEER_ADDRESS=peer1-bank1:7051- CORE_PEER_LOCALMSPID=Bank1MSP- CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=fabric-bank1- FABRIC_LOGGING_SPEC=debug- CORE_PEER_TLS_ENABLED=true- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/tls/signcerts/cert.pem- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/tls/keystore/key.pem- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/tlsca/tls-ca-cert.pem- CORE_PEER_GOSSIP_USELEADERELECTION=true- CORE_PEER_GOSSIP_ORGLEADER=false- CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1-bank1:7051- CORE_PEER_GOSSIP_SKIPHANDSHAKE=false- CORE_LEDGER_STATE_STATEDATABASE=CouchDB- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb.peer1-bank1:5984- CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME=admin- CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD=adminpwworking_dir: /opt/gopath/src/github.com/hyperledger/fabric/bank1/peer1volumes:- ../chaincodeRun:/host/var/run- ../../data/bank1/peer1:/tmp/hyperledger/bank1/peer1 - ../../organizations/peerOrganizations/bank1.example.com/peers/peer1-bank1.bank1.example.com/msp:/etc/hyperledger/msp- ../../organizations/peerOrganizations/bank1.example.com/peers/peer1-bank1.bank1.example.com/tls:/etc/hyperledger/tls- ../../organizations/fabric-ca/tls-ca/crypto:/etc/hyperledger/tlscanetworks:- fabric-bank1

報錯日志:

panic: Could not create _lifecycle chaincodes install path: mkdir /var/hyperledger/production: permission denied。

根本原因:

首先,Fabric Peer 默認將 fileSystemPath為 /var/hyperledger/production。這表示即使我進行了掛載,但是啟動時節點依然會在producction目錄下操作,所以并沒有掛載正確。

然后,docker compose文件通常以root身份啟動運行。但是如果像我一樣在YAML文件里設置了user的字段,類似“user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}"”,就會以其他身份進行操作。同時,由于var/hyperledger/production目錄只能由root用戶操作,再加上前面說的掛載不正確,所以會報錯沒有權限。

解決方案:

最簡單的,可通過環境變量 CORE_PEER_FILESYSTEMPATH 覆蓋系統默認的/var/hyperledger/productionl路徑。可以換為我們自定義的。

其次,就是將掛載目錄修改為系統默認的路徑。

但是這兩者都需要注意給宿主主機的掛載路徑配置操作權限

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/923517.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/923517.shtml
英文地址,請注明出處:http://en.pswp.cn/news/923517.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

uni-app + Vue3 開發展示 echarts 圖表

場景:使用 uni-app 開發手機端,需要展示 echarts 圖表 1. 打開 uni-app 官網 https://uniapp.dcloud.net.cn/ 2. 點擊右上角搜索 3. 點擊插件市場,搜索 echarts 找到 echarts 插件 4. 下載到自己的項目中 使用詳情在該頁面下方.

給AI配一臺手機+電腦?智譜AutoGLM上線!

早上剛坐進地鐵,對著手機隨口說句 “整理上周銷售周報”,等你到公司打開電腦,Excel 數據統計表、PPT 匯報版已經整整齊齊躺在桌面 —— 這不是科幻片里的畫面,而是智譜 AutoGLM 2.0 帶來的真實體驗。2025年8月20日,智譜…

NGUI--游戲登錄、注冊和服務器選擇系統??

項目核心思路該項目實現了一個完整的游戲賬號流程:??用戶側流程??:新用戶注冊 -> 返回登錄 -> 輸入賬號密碼 -> 選擇游戲服務器 -> 進入游戲。??數據管理??:所有數據(賬號信息、服務器列表、用戶選擇&#xf…

自動化測試框架是軟件測試的核心基礎設施,通過預設規則和腳本自動執行測試用例,顯著提高測試效率和覆蓋率。

1. 自動化測試框架1.1 概述自動化測試框架是軟件測試的核心基礎設施,通過預設規則和腳本自動執行測試用例,顯著提高測試效率和覆蓋率。現代AI驅動的自動化測試框架結合了機器學習、自然語言處理和計算機視覺技術,實現了更智能的測試用例生成、…

在 Ubuntu 系統中利用 conda 創建虛擬環境安裝 sglang 大模型引擎的完整步驟、版本查看方法、啟動指令及驗證方式

以下是在 Ubuntu 系統中利用 conda 創建虛擬環境安裝 sglang 大模型引擎的完整步驟、版本查看方法、啟動指令及驗證方式,全程使用清華源加速,并包含關鍵注意事項: 一、完整安裝步驟(基于 conda + 清華源) 1. 準備工作:安裝 conda 并配置清華源 (1)安裝 Miniconda #…

Unity Excel數據導入工具

UnityExcelImporterX - Unity Excel數據導入工具 自動將Excel文件(.xls, .xlsx)中的數據轉換為Unity的ScriptableObject資源。 項目基于unity-excel-importer,增加了一些新特性。項目地址:github.com/nayaku/UnityExcelImporter…

np.linalg 函數一覽

📚 常用 np.linalg 函數一覽下面是一些最常用的功能和示例:1. np.linalg.norm() —— 計算向量或矩陣的范數python深色版本import numpy as npv np.array([3, 4]) print(np.linalg.norm(v)) # L2 范數(模長): √(34) 5.0A np.…

Linux入門(二)

計算機原理系列 歡迎大家關注「海拉魯知識大陸」 多交流不迷路 Linux入門(二) 在上一章Linux入門(一)中rm -rf /是比較簡單的哈,那么升級一下:xargs指令的作用是啥呢? 1.進程 應用的可執行文件是放在文件系統里&a…

開發與維護nodejs工具庫或自定義npm包

h5打開以查看 一、初始設置:為成功發布做好準備 1. 項目初始化與結構 bash # 創建項目目錄并初始化 mkdir my-awesome-lib cd my-awesome-lib npm init -y 推薦的項目結構: text my-awesome-lib/ ├── src/ # 源代碼目錄 │ └──…

IntelliJ IDEA 的 Git 功能

1. 克隆(Clone)項目 這是你開始的第一步。你需要將遠程倉庫的代碼克隆到本地。 打開 IDEA,選擇 Get from VCS。在彈出的窗口中,選擇 Git。粘貼遠程倉庫的 URL(通常來自 GitHub、GitLab 等)。選擇一個本地目…

fastapi全局注入mysql,單數據庫

1、封裝sql連接 test_db.py from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession from sqlalchemy.orm import sessionmaker from fastapi import Request, Depends# 1. 數據庫連接配置 async_engine create_async_engine("mysqlaiomysql://root:root…

深度學習常見應用算力要求?

深度學習常見應用的算力要求,首先需要明確算力的核心衡量維度:計算能力:以每秒浮點運算次數(FLOPS,如 TF32/FP16/FP8 精度下的吞吐量)衡量,決定任務運行速度;顯存容量:決…

邪修實戰系列(5)

1、第一階段邪修實戰總覽(9.1-9.30) 把第一階段(基礎夯實期)的學習計劃拆解成極具操作性的每日行動方案。這個計劃充分利用我“在職學習”的特殊優勢,強調“用輸出倒逼輸入”,確保每一分鐘的學習都直接服務…

Python TensorFlow的CNN-LSTM-GRU集成模型在邊緣物聯網數據IoT電動汽車充電站入侵檢測應用

全文鏈接:https://tecdat.cn/?p43881 原文出處:拓端抖音號拓端tecdat 隨著物聯網(IoT)技術在電動汽車充電站(EVCS)中的普及,充電站不僅成為智能交通的關鍵節點,更因連接電網、用戶設…

3dma渲染噪點成因排查及優化方案

有時候在用 3D Max 渲染完效果圖,畫面上總有密密麻麻的小顆粒,也就是常說的噪點,原本精致的模型和材質,一有噪點質感就掉了大半。其實多數時候,噪點問題都和渲染參數設置有關。那么出現噪點原因和解決方案有哪些&#…

【LeetCode】算法詳解#15 ---環形鏈表II

1.題目描述 給定一個鏈表的頭節點 head ,返回鏈表開始入環的第一個節點。 如果鏈表無環,則返回 null。如果鏈表中有某個節點,可以通過連續跟蹤 next 指針再次到達,則鏈表中存在環。 為了表示給定鏈表中的環,評…

Kafka面試精講 Day 18:磁盤IO與網絡優化

【Kafka面試精講 Day 18】磁盤IO與網絡優化 在“Kafka面試精講”系列的第18天,我們聚焦于磁盤IO與網絡優化。作為支撐百萬級吞吐量的分布式消息系統,Kafka的高性能不僅依賴于優秀的架構設計,更離不開對底層資源——尤其是磁盤和網絡——的極…

ActiveMQ RocketMQ RabbitMQ Kafka選型及應用場景

許多時候我們都將Kafka拿來跟常用的幾個消息隊列作比較,將 Kafka 加入對比使得選型更加全面和實際。但請注意Kafka并非完全適用消息中間件的所有場景。這四款消息中間件定位不同,選擇取決于你的具體場景。消息隊列選型核心定位一句話總結RabbitMQ&#x…

STM32初始化串口重定向后printf調試信息不輸出的問題

STM32初始化串口重定向后調試信息不輸出的問題 Author:明月清了個風Date: 2025/9/9PS:開發stm32F745的過程中發現printf有時候不打印信息,單獨調試確定了串口初始化和重定向正確,但是在系統整體調試的時候雖然正確運行…

PCA9535ECDWR2G 微控制器MCU接口芯片 ON 電子元器件解析

一、PCA9535ECDWR2G ON 元器件解析1. 是什么電子元器件? PCA9535ECDWR2G 是安森美半導體(ON Semiconductor)生產的一款16位I/O擴展器。它屬于接口芯片類別,具體功能是通過IC總線為微控制器(MCU)提供額外的通…