作者:ChainDesk韩小东,ChainDesk区块链行业分析师, ChainDesk区块链工程师
熟练掌握链码的 dev 开发测试模式
从之前对链码操作来看,我们需要在相关操作(安装、实例化、升级、调用、查询)命令中加入大量的参数,尤其是开启 TLS 验证之后指定 TLS 证书时的那一长串路径会让人不厌其烦。如果每次都需要输入那么内容,我想大部分人都会崩溃掉的。那么我们现在就来掌握一种能够快速对链码进行测试而不需要输入那些烦琐的内容,从而简化我们对链码的测试。
正常情况下 chaincode 由 peer 启动和维护。然而,在 dev “开发模式”下,链码由用户构建并启动。
如果没有下载安装 Hyperledger Fabric Samples 请先下载安装;
如果没有下载 Docker images 请先下载。
在 dev 开发模式下我们可以使用三个终端来实现具体的测试过程
终端1(当前终端)
为了确保我们的系统中的 Docker 镜像文件是完整的,首先使用 docker images 命令查看 Docker 镜像信息(显示本地 Docker Registry):
区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”
进入 chaincode-docker-devmode 目录下我们会发现与网络、通道、初始区块相关的所有内容。如:
docker-compose-simple.yaml:网络启动依赖的配置文件
该配置文件中指定了四个容器,分别为:orderer、peer、cli、chaincode, 各项的配置内容大家可以通过 cat 命令查看,在此不再赘述。
msp:网络环境的 MSP,包含一系列的证书及私钥。
myc.block:代表通道配置块文件。
myc.tx:应用通道交易配置文件。
orderer.block:初始区块配置文件。
下面,我们使用 docker-compose-simple.yaml 配置文件来启动网络:
net 模式与 dev 模式到底有什么区别?
使用 net 模式每次修改链码后想要测试,需要对链码进行升级重新实例化(或重新安装再实例化),指定一大堆参数,给开发调试带来了很大的不便。而 dev 模式就简化了这些过程。
CORE_PEER_ADDRESS=peer:7052 中的 7052 端口到底指的是什么?为什么不是 7051 ?
peer:7052 是用于指定链码的专用监听地址及端口号。而7051是peer节点监听的网络端口
未经授权禁止转载、改编,转载请注明出处!
本文地址: https://www.chaindesk.cn/witbook/11/119
以区块链技术为入口,搭建全球区块链技术生态超级社区,社区将服务于公链生态建设、DAPP项目研发、技术咨询、课程体系研发、区块链书籍编写,区块链课程制作、讲师培训、区块链职业教育、区块链线上教育、去中心化技术评测一体化的区块链技术超级社区。
免费·原创·专业·高效·系统