پس از دانلود تصاویر و نمونههای Hyperledger Fabric Docker، میتوانید با استفاده از اسکریپتهایی که در مخزن پارچه نمونهها ارائه میشوند، یک شبکه آزمایشی راهاندازی کنید. شبکه آزمایشی برای یادگیری Fabric با اجرای گرهها در ماشین محلی شما ارائه شده است. توسعه دهندگان می توانند از شبکه برای آزمایش قراردادهای هوشمند و برنامه های کاربردی خود استفاده کنند. قرار است از این شبکه فقط به عنوان ابزاری برای آموزش و آزمایش استفاده شود و نه به عنوان مدلی برای نحوه راه اندازی یک شبکه. به طور کلی، تغییرات در اسکریپت ها ممنوع است و می تواند شبکه را خراب کند. این بر اساس یک پیکربندی محدود است که نباید به عنوان یک الگو برای استقرار یک شبکه تولید استفاده شود:
این شامل دو سازمان همتا و یک سازمان سفارش دهنده است. برای سادگی، یک سرویس سفارش Raft تک گره پیکربندی شده است. برای کاهش پیچیدگی، یک مرجع صدور گواهی TLS (CA) مستقر نشده است. همه گواهی ها توسط CAهای ریشه صادر می شوند. شبکه نمونه یک شبکه Fabric را با Docker Compose مستقر می کند. از آنجایی که گره ها در یک شبکه Docker Compose ایزوله هستند، شبکه آزمایشی برای اتصال به سایر گره های Fabric در حال اجرا پیکربندی نشده است. برای یادگیری نحوه استفاده از Fabric در تولید، به استقرار یک شبکه تولید مراجعه کنید. توجه: این دستورالعملها تأیید شدهاند تا با جدیدترین تصاویر ثابت Fabric Docker و ابزارهای راهاندازی از پیش کامپایلشده در فایل tar ارائهشده کار کنند. اگر این دستورات را با تصاویر یا ابزارهای شاخه اصلی فعلی اجرا کنید، ممکن است با خطا مواجه شوید.
cd fabric-samples/test-network
Usage:
network.sh [Flags]
Modes:
up - Bring up Fabric orderer and peer nodes. No channel is created
up createChannel - Bring up fabric network with one channel
createChannel - Create and join a channel after the network is created
deployCC - Deploy a chaincode to a channel (defaults to asset-transfer-basic)
down - Bring down the network
Flags:
Used with network.sh up, network.sh createChannel:
-ca - Use Certificate Authorities to generate network crypto material
-bft - Use Orderers with consensus type BFT (Not available in Fabric v2.x)
-c - Name of channel to create (defaults to "mychannel")
-s - Peer state database to deploy: goleveldb (default) or couchdb
-r - CLI times out after certain number of attempts (defaults to 5)
-d - CLI delays for a certain number of seconds (defaults to 3)
-verbose - Verbose mode
Used with network.sh deployCC
-c - Name of channel to deploy chaincode to
-ccn - Chaincode name.
-ccl - Programming language of the chaincode to deploy: go, java, javascript, typescript
-ccv - Chaincode version. 1.0 (default), v2, version3.x, etc
-ccs - Chaincode definition sequence. Must be an integer, 1 (default), 2, 3, etc
-ccp - File path to the chaincode.
-ccep - (Optional) Chaincode endorsement policy using signature policy syntax. The default policy requires an endorsement from Org1 and Org2
-cccg - (Optional) File path to private data collections configuration file
-cci - (Optional) Name of chaincode initialization function. When a function is provided, the execution of init will be requested and the function will be invoked.
-h - Print this message
Possible Mode and flag combinations
up -ca -r -d -s -verbose
up -bft -r -d -s -verbose
up createChannel -ca -c -r -d -s -verbose
up createChannel -bft -c -r -d -s -verbose
createChannel -bft -c -r -d -verbose
deployCC -ccn -ccl -ccv -ccs -ccp -cci -r -d -verbose
Examples:
network.sh up createChannel -ca -c mychannel -s couchdb
network.sh createChannel -c channelName
network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-javascript/ -ccl javascript
network.sh deployCC -ccn mychaincode -ccp ./user/mychaincode -ccv 1 -ccl javascript
راه اندازی یک کد زنجیره ای در کانال
./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go