![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
docker
keep_top
软件工程硕士研究生 研究方向:区块链,Hyperledger Fabric联盟链技术,go语言开发,欢迎大家一起交流学习!本人已毕业,目前是一名浙江高校辅导员。
展开
-
强制删除所有docker镜像指令
强制删除所有docker镜像指令(linux环境下):原创 2023-08-09 12:36:33 · 337 阅读 · 0 评论 -
使用Tape对超级账本Fabric2.4.4进行性能测试(全过程搭建)
前提环境:搭建好超级账本Fabric2.4.4版本网络,启动test-netwok的官方示例,如不知道如何搭建超级账本Fabric2.4.4?Tape 是一款轻量级 Hyperledger Fabric。启动test-network环境,安装官方链码(asset)克隆官方tape仓库:git clone。原创 2023-03-05 23:17:42 · 1564 阅读 · 1 评论 -
docker删除所有容器(包括退出的容器)
(docker ps -a -q)代表所有容器。rm表示remove删除。原创 2023-03-04 00:30:02 · 417 阅读 · 0 评论 -
超级账本Fabric2.2自定义集群启动(修改官方Demo)
前言:基础是来自博主:明神特烦恼的优秀博客Fabric2.2全面专栏!这里仅仅对博主明神特烦恼的补充和延伸部分。前置条件:Fabric2.2.1环境,docker环境,docker-compose环境都有。超级账本Fabric2.2自定义集群启动(修改官方Demo)输入:./network.sh createChannel。至此,简单的自定义fabric集群就做好了。修改如下文件:configtx.yaml。增加信息,红框中的内容是我们需要增加的。增加对应环境变量信息。...原创 2022-08-11 14:08:36 · 520 阅读 · 0 评论 -
go-sdk项目补充
如果之前已经启动了docker网络,这时候,我们先进入虚拟机把fabric网络down掉去:然后再清理缓存:docker-compose down && docker volume prune这样就可以在goland重新去连接go-sdk。PKI 解决了fabric网络中身份发放的问题,但由于节点的私钥永远都不会公开,因此还需要引入一种可以证实身份的机制 MSP 。MSP 是一组被添加在网络中的配置文件夹,被用来在外部和内部定义组织(organization)。CA生成代表身份的证书,而MSP包含了被许可身原创 2022-07-05 15:49:41 · 503 阅读 · 0 评论 -
fabric-go-sdk配置/etc/hosts文件映射问题和在虚拟机跑通fabric-go-sdk例子
首先我们进行拉去镜像:https://github.com/sxguan/fabric-go-sdk进入我们的$GOPATH:cd $GOPATH/src && git clone https://github.com/sxguan/fabric-go-sdk.git拉取镜像此时我们注意,首先查看自己系统中已安装的docker镜像版本!输入:docker images 我们先打开拉取的docker-compose文件:把里面的镜像版本换成已有的fabric镜像版本! 如果需要在linux里运行go-sd原创 2022-07-04 19:03:47 · 1250 阅读 · 0 评论 -
关于fabric2.4.4注意事项
今天自己写了个链码,然后发现在goland里没有报错的,在环境中部署也可以成功,但是部署好了后,docker ps一下发现链码容器自动退出了,我们查看docker logs 容器id,发现这个错:显示QueryAllUsers返回值错误,需要一个确定的返回值,我纳闷了,我就是按着fabcar改的,为什么会错误呢,来回调整代码一下午,好像发现了问题所在,我自己的链码里的结构体我嵌套了一个结构体,我尝试把嵌套的结构体拿掉,再次部署,就成功了!具体原因我也不知道为什么,可能是fabric2.4.4最新版本的链码中原创 2022-07-02 21:38:07 · 704 阅读 · 0 评论 -
记Ubuntu怎么拉东西到win11
今天换了新电脑,然后装了最新的Ubuntu22.04,也装了vm-tools,但是发现东西拉不出来,很奇怪,解决方法:在Ubuntu22.04里把文件夹压缩一下,然后再把压缩包复制,在win11上可以粘贴了。具体原因我也不懂,之前版本是可以的,估计是版本的问题。Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和Gnome桌面环境,而从11.04版原创 2022-06-28 16:40:32 · 465 阅读 · 0 评论 -
Error: could not assemble transaction: ProposalResponsePayloads do not match - proposal response: ve
最近在跑fabric2.3自测链码的时候遇到了很多错误,自己也是很苦恼,改了好几个下午的bug就是找不到真正的问题所在,下面先看一个错误:Error: could not assemble transaction: ProposalResponsePayloads do not match - proposal response: version:1 response:......原创 2022-06-21 22:28:28 · 1743 阅读 · 1 评论 -
如何在fabric1.4中的first-network网络中自己测试链码
我们都知道在fabric1.4的环境中有一个自动启动的网络,那就是用自动脚本启动的first-network网络:下面说一下如何自己测试自己的链码:打开对应文件,将CC_SRC_PATH设置为自己的链码路径:这里要注意,使用脚本的时候会自动执行:初始化的时候,参数和查询的时候参数是固定的,所以为了自己的脚本不报错,这里自己的链码只要实现对于的方法就行:这里实现了一个查询和初始化的方法和一个invoke转账的方法,也就是官方链码里的方法就好了:然后执行的操作就和执行官方例子一样的:可以看这篇博客:关于Erro原创 2022-06-20 19:59:17 · 324 阅读 · 0 评论 -
Value did not match schema:\n1. return.ok.Ok2: Invalid type. Expected: array, given: null
今天遇到个问题:Value did not match schema:\n1. return.ok.Ok2: Invalid type. Expected: array, given: null开始很纳闷,不知道是哪里出了问题,所以进行了test,后来发现,是我定义的结构体里有切片,也就是可变数组,如下图:让我们再看看反馈的结果:Value did not match schema:\n1. return.ok.Ok2: Invalid type. Expected: array, given: null值原创 2022-06-17 17:21:16 · 637 阅读 · 0 评论 -
下载dokcer镜像卡住了怎么办?
我们有时候会遇到dokcer下载镜像的时候卡死了重启docker即可:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。首先需要先从镜像仓库服务中拉取镜像。常见的镜像仓库服务是 Docker Hub,但是也存在其他镜像仓库服务。拉取操作会将镜像下载到本地 Docker 主机,可以使用该镜像启动一个或者多个容器。镜像由多原创 2022-06-17 16:21:18 · 1705 阅读 · 0 评论 -
强制删除docker镜像指令
docker rmi `docker images -q` --force--force表示强制性原创 2022-06-16 14:18:17 · 362 阅读 · 0 评论 -
fabric2.X以上系统用test-network环境测试自己的链码
首先,我们需要安装好fabric2.X的环境,具体参考我之前的文章:这里默认已经有了fabric2.X的环境,进入test-network文件夹:在开始测试之前:先把gopath项目路径全部解锁:sudo chmod -R 777 $GOPATH打开测试网络:sudo ./network.sh up如果想要同时启动CA服务器和couchdb,执行这条指令:./network.sh up createChannel -ca -s couchdb可以看到启动了fabric2.3的测试网络,包含了一个cli,两个原创 2022-06-14 21:08:00 · 1164 阅读 · 0 评论 -
fabric2.3链码对比1.4链码小记
最近实验室的项目要部署到fabric2.0以上版本,之前写的都是1.4的链码,现在看2.0版本的链码还是有些不一样的,主要是链码api改了。原创 2022-06-14 16:33:42 · 695 阅读 · 1 评论 -
fabric的证书公私钥签名验证过程测试
今天来简单记录一下在fabric证书的公私钥签名验证的过程:首先我们要知道,在fabric的证书体系中,公钥是什么,私钥是什么文件:我们进入peer0.org1.example.com节点文件,可以看到几个文件夹,其中,keystore里存放的就是peer0的私钥文件,在signcerts文件中存放的就是peer0的公钥(证书)文件,因为公钥存在于证书文件中。此时我们引入go语言编写的公私钥验证代码:这里注意使用的是椭圆曲线算法,不是RSA的!具体代码不展示了:.原创 2022-04-29 17:48:49 · 1425 阅读 · 0 评论 -
关于‘go list‘ failed with: error obtaining VCS status error obtaining VCS status: exit status 128问题的解决
今天在测试fabric2.4的时候遇到了这个问题:'go list' failed with: error obtaining VCS status error obtaining VCS status: exit status 128,具体是在安装链码的时候报错的,查了资料发现没有对应的错误,所以想简单记录一下。原因:是因为我们的go版本太高了!因为之前安装的go版本是1.18的,是最新版,我们将go的版本降至1.16之后,再执行就可以成功了!此时测试:显示安装链码成功了!查询原创 2022-04-28 21:21:46 · 5654 阅读 · 5 评论 -
YAML中层级和数组的区别
yaml内容:name: Janekey: - child-key: value - child-key2: value2 对应的json格式:如果是:yaml内容:name: Janekey: child-key: value child-key2: value2则json格式为:区别为,当我们需要取其中的数据时,如果是相同层级,则为object.vaule1.vaule2格式进行取,如果是数组类型,则是ob...原创 2022-04-10 20:35:07 · 836 阅读 · 0 评论 -
在linux虚拟机跑的dokcer项目如何在winodws宿主机上运行
可以看到dokcer里的8000端口和linux的8000端口进行了映射,如果我们要在linux里进行网页打开,此时我们在linux的网址也输入:localhost:8000 即可访问相关web网页。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的。原理:docker和虚拟机有个端口映射关系,虚拟机ip和windows宿主机又有一个ip和端口映射关系!Linux,全称GNU/Linux,是一种免费使用和自由传播的。原创 2022-04-06 19:15:27 · 1307 阅读 · 0 评论 -
关于 The compose file ‘./docker-compose.yaml‘ is invalid because:networks.fabric_network的解决方案
今天在用docker-compose跑项目的时候出现了一个错误:解决方案:我们先查看我们的dokcer-compose版本:使用docker-compose -v 查看compose的版本:可以看到版本是1.12.0 其实报错的原因是因为dokcer-compose版本太低了,我们进行版本的升级:我们这里可以直接下载进行老版本的覆盖,不需要先卸载docker-compose再安装操作:下载Docker Compose:curl -L https://get.daoclou原创 2022-04-03 17:04:38 · 15892 阅读 · 0 评论 -
关于Got permission denied while trying to connect to the Docker daemon socket at unix:///解决方案
今天在试docker的时候发现了一个问题:按理说直接加sudo就好了,但是每次都加sudo就很麻烦,所以我们可以这样:输入指令:sudo chmod a+rw /var/run/docker.sock然后再运行就好了:原创 2021-11-04 15:09:34 · 649 阅读 · 0 评论 -
当用Fabric CA登记peer时多次登记后该删除keystore里之前的文件吗?
若一个用户想得到一份属于自己的证书,需先向CA提出申请,并提交自己的公钥到CA(也可由CA统一生成公私钥对)。当CA判明申请人的身份后,会使用自己的私钥将申请人的身份信息、公钥和证书过期时间等信息一起加密,生成数字证书,分发给申请者,这就是颁发证书的过程。CA(certificate authority)是指一个被多个用户信任的证书签发机构,负责签发证书、认证证书、管理已颁发的证书。目前HTTPS协议中保证通讯安全所依赖的证书,就是通过CA签发证书来实现的。原创 2021-10-10 16:57:32 · 1805 阅读 · 0 评论 -
关于docker映射主机的简单记录
我们在配置fabric的时候,启动的docker容器里的路径和主机上是不一样的:我们来看一个配置文件:这个配置文件(docker-compose-cli.yaml)里写了主机的路径和docker中的对应情况,我们可以看到:主机的./../chaincode/下面是这个文件:(./代表当年目录,../代表上一级目录,我们这里可以知道,这个配置文件是在first-network文件夹下的,所以./代表当前文件夹,再来../代表上一级目录,就是fabric-samples文件夹下了。)代表着,主机原创 2021-09-09 00:13:13 · 325 阅读 · 0 评论 -
简单记录一下docker的一些指令
指令如下:1 docker ps // 查看所有正在运行容器 2 docker stop containerId // containerId 是容器的ID 3 docker ps -a // 查看所有容器 $ docker ps -a -q // 查看所有容器ID 4 docker stop $(docker ps -a -q) // stop停止所有容器 5 docker rm $(docker ps -a -q) // remove删除所有容器...原创 2021-09-08 19:44:02 · 83 阅读 · 0 评论