一、安装go
go官方网址
复制链接
cd /usr/local/
如果不是root
sudo -i 切换为root
#下载安装包
wget https://golang.google.cn/dl/go1.17.2.linux-amd64.tar.gz
#解压安装包
tar -zxvf go1.17.2.linux-amd64.tar.gz
#打开配置
vi /etc/profile
#在最下面添加
export GOROOT=/usr/local/go
export GOPATH=/home/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
#保存退出
:wq
#配置生效
source /etc/profile
查看版本
go version
二、安装docker,docker-compose
使用官方安装脚本自动安装docker
安装命令如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以使用国内 daocloud 一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh
安装docker-compose
docker-compose官网
curl -L "https://github.com/docker/compose/releases/download/1.28.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
三、安装fabric
cd
mkdir -p go/src/github.com/hyperledger/
cd go/src/github.com/hyperledger
git clone "https://github.com/hyperledger/fabric.git"
cd fabric/
git checkout remotes/origin/release-2.2
cd scripts/
方法一、官方脚本
./bootstrap.sh
由于被墙了可能有点慢
方法二、分开下载
下载samples
git clone https://gitee.com/zhoulhj/fabric-samples.git
下载镜像
./bootstrap.sh -s -b
导入二进制文件,注意修改权限
链接: https://pan.baidu.com/s/14E0GbpjHRbX_MUjU4woPSg
提取码: my2h
cd test-network
./network.sh up
部署链码
./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go
export PATH=${PWD}/../bin:$PATH
export FABRIC_CFG_PATH=$PWD/../config/
# Environment variables for Org1
export CORE_PEER_TLS_ENABLED=true
export CORE_PEER_LOCALMSPID="Org1MSP"
export CORE_PEER_TLS_ROOTCERT_FILE=${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=${PWD}/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
export CORE_PEER_ADDRESS=localhost:7051
CORE_PEER_TLS_ROOTCERT_FILE和CORE_PEER_MSPCONFIGPATH环境变量指向Org1的organizations文件夹中的的加密材料。 如果您使用 ./network.sh deployCC -ccl go 安装和启动 asset-transfer (basic) 链码,您可以调用链码(Go)的 InitLedger 方法来赋予一些账本上的初始资产(如果使用 typescript 或者 javascript,例如 ./network.sh deployCC -l javascript,你会调用相关链码的 initLedger 功能)。 运行以下命令用一些资产来初始化账本:
peer chaincode invoke -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls --cafile ${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n basic --peerAddresses localhost:7051 --tlsRootCertFiles ${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt --peerAddresses localhost:9051 --tlsRootCertFiles ${PWD}/organizations/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt -c '{"function":"InitLedger","Args":[]}'
现在你可以用你的 CLI 工具来查询账本。运行以下指令来获取添加到通道账本的资产列表:
peer chaincode query -C mychannel -n basic -c '{"Args":["GetAllAssets"]}'
fabric中文文档中有后续步骤