如何在Hyperledger FireFly中创建NameSpaces?求具体操作步骤
Hyperledger FireFly 多Namespace创建详细步骤
一、通过配置文件预创建Namespace
- 找到FireFly节点的主配置文件(通常为
firefly.yml,也可通过环境变量指定路径) - 在配置中添加
namespaces数组,每个元素对应一个Namespace的配置,示例:
namespaces: - name: "ns1" description: "业务线A专属命名空间" default: false # 设置为true则作为节点默认Namespace auto_create: true # 节点启动时自动创建该Namespace - name: "ns2" description: "业务线B专属命名空间" default: false auto_create: true
- 保存配置后重启FireFly节点,节点启动流程会自动完成Namespace的创建
二、通过REST API动态创建Namespace
- 确保FireFly节点已启动,API服务端口(默认5000)正常可访问
- 发送POST请求到
/api/v1/namespaces接口,请求体为JSON格式,示例:
curl -X POST http://localhost:5000/api/v1/namespaces \ -H "Content-Type: application/json" \ -d '{ "name": "ns3", "description": "临时业务场景命名空间", "default": false }'
- 创建成功后,接口会返回该Namespace的完整信息,包含ID、创建时间等核心字段
三、验证Namespace创建结果
- 发送GET请求到
/api/v1/namespaces接口,可列出所有已创建的Namespace:
curl http://localhost:5000/api/v1/namespaces
- 检查返回的JSON数组,确认目标Namespace已存在且配置符合预期
关键注意事项
- Namespace名称全局唯一,无法重复创建同名实例
- 节点只能设置一个默认Namespace,若配置多个
default: true会导致启动报错 - 动态创建的Namespace无需重启节点,创建后立即生效
- 如需为Namespace绑定特定区块链链码、存储规则,可在配置或API请求中添加对应字段,示例:
{ "name": "chaincode-bound-ns", "description": "绑定自定义链码的命名空间", "blockchain": { "chaincode": "my-business-chaincode" } }
内容的提问来源于stack exchange,提问作者Mustafa Hashmi
相关产品推荐
相关产品推荐

