如何加快Hyperledger Fabric Java智能合约的安装(我想避免超时)?

huangapple go评论75阅读模式
英文:

How to make faster Hyperledger Fabric java Smart Contract install (I want to avoid a timeout)?

问题

我正试图在Hyperledger Fabric上部署一个Java智能合约,但在执行命令 peer lifecycle chaincode install cp.tar.gz 时遇到超时问题。

终端上的错误信息是:

> 错误:链码安装失败,状态码:500 - 模拟中出错:
> 无法执行交易

baeacb6b68dac2872098105d20cb0398e5ce5b744afd37bf75ab65b0ffc7a754:
发送错误:超时已过期,无法执行交易

通过监视网络,错误的出现如下:

> lucid_ganguly|正在下载 https://services.gradle.org/distributions/gradle-5.6.2-bin.zip

peer0.org1.example.com|2020-05-30 03:15:08.175 UTC [背书人]
callChaincode -> 信息 04d 链码完成:_生命周期 用时:
300000毫秒 通道= txID=baeacb6b peer0.org1.example.com|2020-05-30
03:15:08.176 UTC [背书人] SimulateProposal -> 错误 04e 调用链码 _生命周期 失败,错误:超时已过期,无法执行
交易

我认为下载那个gradle文件花费了太多时间。我的网络不太快,但昨天它在多次正常工作。如果我重新执行命令,那么合约会正确安装,我认为这是因为文件已经下载到对等端。

修改超时限制可能会避免错误,但安装智能合约仍然需要很长时间。

我对Docker了解不多。是否有一种方式可以在重新启动网络时不必每次下载gradle文件?是否有其他方法可以加快安装速度?

编辑:是否可能打开Kazam(不录制)会使我的电脑变慢(可能导致超时)?

英文:

I'm trying to deploy a Java Smart Contract on Hyperledger Fabric, and I'm having timeout issues executing the command peer lifecycle chaincode install cp.tar.gz.

The error at the terminal is:

> Error: chaincode install failed with status: 500 - error in
> simulation: failed to execute transaction
> baeacb6b68dac2872098105d20cb0398e5ce5b744afd37bf75ab65b0ffc7a754:
> error sending: timeout expired while executing transaction

Monitoring the network, the error occurs like this:

> lucid_ganguly|Downloading https://services.gradle.org/distributions/gradle-5.6.2-bin.zip
> peer0.org1.example.com|2020-05-30 03:15:08.175 UTC [endorser]
> callChaincode -> INFO 04d finished chaincode: _lifecycle duration:
> 300000ms channel= txID=baeacb6b peer0.org1.example.com|2020-05-30
> 03:15:08.176 UTC [endorser] SimulateProposal -> ERRO 04e failed to
> invoke chaincode _lifecycle, error: timeout expired while executing
> transaction

It seems to me that downloading that gradle file is taking too much time. My internet is not so fast, but yesterday it worked fine several times. If I re-execute the command, then the contract is installed correctly, I think because the file is already downloaded into the peer.

Modifying the timeout limit may be avoid the error, but it will still taking a lot of time installing the Smart Contract.

I don't know much about docker. There is some way that the gradle file is not downloaded everytime I restart the network? There is other way to make the install faster?

EDIT: Is it possible that having Kazam open (not recording) make my PC works slower (and perhaps causing timeout)????

答案1

得分: 3

这是超级账本(Hyperledger)的工作原理。

1)您的Java代码将作为gradle项目。当您在'cli'容器中触发'install'时,代码将被简单地复制到指定的位置。
2)下一步是实例化。在这一步中,实际上是通过'gradle build'来启动并开始下载所有依赖项。

为了加快这个过程,首先在您的机器上执行'gradle build'。这将导致所有的依赖项都被下载到您的'~/.gradle'文件夹中。现在,将此文件夹'COPY'到'hyperledger/fabric-javaenv' Docker镜像中,即我们正在将所有依赖项从您的本地磁盘复制到镜像中。这样,可以避免在Docker容器内部进行下载。

编辑:
希望您已经克隆了'fabric samples'代码。完成后,转到以下位置。正是这段代码在'cli'容器中安装和实例化到对等体中。

C:\sw\hlf146-2\fabric-samples\fabcar\java

然后执行gradle build。假设您拥有互联网访问权限且没有代理相关的麻烦,您的构建应该成功。

 C:\sw\hlf146-2\fabric-samples\fabcar\java>gradle build
 为此构建启动了一个新的JVM,以遵守此构建的JVM设置。请考虑使用守护程序: https://docs.gradle.org/6.3/userguide/gradle_daemon.html。
 守护程序将在构建结束时停止,在处理后停止

 > Task :buildEnvironment

 ------------------------------------------------------------
 Root project
 ------------------------------------------------------------

 classpath
 No dependencies

 可以通过添加 --scan 选项来获取基于Web的、可搜索的依赖性报告。

 在此构建中使用了已弃用的Gradle功能,使其与Gradle 7.0不兼容。
 使用'--warning-mode all'来显示单个弃用警告。
 请参阅 https://docs.gradle.org/6.3/userguide/command_line_interface.html#sec:command_line_warnings

 成功构建在16秒内完成
 1个可执行任务: 1个已执行

构建成功后,gradle构建将会将所有依赖项下载到以下文件夹中

c:\users\your-user-name\.gradle

希望您已经在您的计算机上下载了Fabric镜像。不要担心我的输出中的Fabric镜像大小。我在某些输出中可能会看到一些'巨大'的镜像,比如4.58 GB。还可以忽略下面的'dev-peerX.orgX'图像。您将在网络启动时创建它们。

现在在上面的图像列表中,'hyperledger/fabric-javaenv'图像将用于在'cli'容器中从HLF编译您的链码。我们希望在其中添加来自您机器上'c:\users\your-user-name.gradle'的依赖项。此外,在撰写本文时,'hyperledger/fabric-javaenv'图像正在使用gradle 4.5版本,而我希望使用最新的gradle版本。因此,我还将gradle 6.3(尽管在撰写本文时,Gradle 6.4是最新版本)复制到'hyperledger/fabric-javaenv'图像中。

为此,在一个新的文件夹中放置一个名为'Dockerfile'(无文件扩展名)的文件,并具有以下内容(从现在开始,我假设您在Docker方面有一些了解,否则,您应该停在这里。学习一些Docker的基础知识,然后从这里继续)。

FROM hyperledger/fabric-javaenv:1.4
RUN rm -rf /root/.gradle
RUN rm -rf /opt/gradle

ADD ./gradle.zip /opt/
RUN unzip -o /opt/gradle.zip -d /opt/

ADD ./.gradle.zip /root/.gradle/
RUN unzip -o /root/.gradle/.gradle.zip -d /root/.gradle
ENV PATH="/opt/gradle/gradle-6.3/bin:${PATH}"
ENV GRADLE_HOME="opt/gradle/gradle-6.3"
RUN chmod 777 /opt/gradle/gradle-6.3/bin/*
ENV JAVA_HOME="/opt/java/openjdk"

现在将c:\users\your-user-name.gradle文件夹内容(而不是文件夹本身)压缩为'.gradle.zip',并将其放置在上述文件夹中。接下来,还需要放置gradle.zip(这是下载的gradle软件,当您解压缩gradle.zip时,其中应该有gradle-6.3,并且其中包含所有Gradle软件。您可以相应地编辑上面的'Dockerfile'以进行正确配置)。

由于我在Windows上运行所有这些操作,我在我的计算机上安装了'Docker Desktop'并选择了'switch to linux containers'。如果您没有安装此软件,则需要安装它。再次假设您没有使用代理,您不会遇到代理相关的麻烦,Docker安装应该会很顺利。

接下来,我们需要使用上述'Dockerfile'来'构建' Docker镜像。

Microsoft Windows [Version 10.0.17763.1217]
(c) 2018 Microsoft Corporation. 保留所有权利。

C:\sw\hlf-scripts\javaenv-image-2>dir
 C盘的卷是 Windows
 卷的序列号是 AE8A-E101

 C:\sw\hlf-scripts\javaenv-image-2 目录

02-06-2020  00:20    <DIR>          .
02-06-2020  00:20    <DIR>          ..
02-06-2020  00:19
英文:

This is how hyper ledger works.

  1. Your Java code would be gradle project., and when you trigger 'install' in 'cli' container, then the code is simply copied to designated location.
  2. Next step would be instantiate. In this step, it is 'gradle build' that actually kicks off and starts downloading all dependencies.

In order to expedite this, first get the 'gradle build' work on your machine. This would result into all depeandancies to be downloaded to your '~/.gradle' folder. Now, 'COPY' this folder to 'hyperledger/fabric-javaenv' docker image, i.e. we are copying all dependencies from your local disk into image. This way, a download from within the docker container would be avoided.

EDIT:
Hope you've cloned the 'fabric samples' code. Once done, go the following location. It is this code that gets installed and instantiated from within the 'cli' container into the peers.

C:\sw\hlf146-2\fabric-samples\fabcar\java

Now perform gradle build. Assuming you have internet accessa and no proxy related harrassment, your build should succeed.

C:\sw\hlf146-2\fabric-samples\fabcar\java&gt;gradle build
To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon: https://docs.gradle.org/6.3/userguide/gradle_daemon.html.
Daemon will be stopped at the end of the build stopping after processing

&gt; Task :buildEnvironment

------------------------------------------------------------
Root project
------------------------------------------------------------

classpath
No dependencies

A web-based, searchable dependency report is available by adding the --scan option.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use &#39;--warning-mode all&#39; to show the individual deprecation warnings.
See https://docs.gradle.org/6.3/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 16s
1 actionable task: 1 executed

Once successful, the gradle build would have downloaded all of the dependancies into following folder

c:\users\your-user-name\.gradle

Hope you have already downloaded fabric images too onto your machine. Dont worry about the sizes of the fabric images in my output below. I was monkeying around and so you see certain images to be 'huge' like 4.58 GB. Also ignore 'dev-peerX.orgX' images below. You'd have them created by the time you get the network UP.

C:\sw\hlf146-2\fabric-samples\fabcar\java&gt;docker image ls
REPOSITORY                                                                                               TAG                 IMAGE ID            CREATED             SIZE
dev-peer0.org2.example.com-fabcar-1.0-264b0a1cb5efbecaac5cf8990339c24474dc8435c6e10f10f2be565d555d0e94   latest              32aca2e8365e        4 hours ago         4.58GB
dev-peer0.org1.example.com-fabcar-1.0-5c906e402ed29f20260ae42283216aa75549c571e2e380f3615826365d8269ba   latest              89f8611e67f7        4 hours ago         4.58GB
hyperledger/fabric-javaenv                                                                               1.4                 190c5452a677        22 hours ago        4.56GB
hyperledger/fabric-ccenv                                                                                 1.4                 774f228847d4        36 hours ago        1.79GB
openjdk                                                                                                  latest              0ce6496aae74        6 weeks ago         497MB
hyperledger/fabric-ca                                                                                    1.4                 3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-ca                                                                                    1.4.6               3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-ca                                                                                    latest              3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-tools                                                                                 1.4.6               0f9743ac0662        3 months ago        1.49GB
hyperledger/fabric-tools                                                                                 latest              0f9743ac0662        3 months ago        1.49GB
hyperledger/fabric-orderer                                                                               1.4                 84eaba5388e7        3 months ago        120MB
hyperledger/fabric-orderer                                                                               1.4.6               84eaba5388e7        3 months ago        120MB
hyperledger/fabric-orderer                                                                               latest              84eaba5388e7        3 months ago        120MB
hyperledger/fabric-peer                                                                                  1.4                 5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-peer                                                                                  1.4.6               5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-peer                                                                                  latest              5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-zookeeper                                                                             0.4                 ede9389347db        7 months ago        276MB
hyperledger/fabric-zookeeper                                                                             0.4.18              ede9389347db        7 months ago        276MB
hyperledger/fabric-zookeeper                                                                             latest              ede9389347db        7 months ago        276MB
hyperledger/fabric-kafka                                                                                 0.4                 caaae0474ef2        7 months ago        270MB
hyperledger/fabric-kafka                                                                                 0.4.18              caaae0474ef2        7 months ago        270MB
hyperledger/fabric-kafka                                                                                 latest              caaae0474ef2        7 months ago        270MB
hyperledger/fabric-couchdb                                                                               0.4                 d369d4eaa0fd        7 months ago        261MB
hyperledger/fabric-couchdb                                                                               0.4.18              d369d4eaa0fd        7 months ago        261MB
hyperledger/fabric-couchdb                                                                               latest              d369d4eaa0fd        7 months ago        261MB

Now in the above image list it is 'hyperledger/fabric-javaenv' image that would be used by HLF to compile your chain code from within the 'cli' container. It is this image that we'd like to enrich with 'c:\users\your-user-name.gradle' dependancies from your machine. Also, at the time of this writing, the 'hyperledger/fabric-javaenv' image was using gradle 4.5 version, and I wanted to use latest gradle version. So, I also copied gradle 6.3 (although Gradle 6.4 was the latest at the time of this writing) too to the 'hyperledger/fabric-javaenv' image.

So for this, in a new folder put a file named 'Dockerfile' (with no file extension) in it with the following contents (from here on I'm assuming you'll have some knowledge on docker, otherwise, you should stop here. Learn some basics of Docker and resume from here).

FROM hyperledger/fabric-javaenv:1.4
RUN rm -rf /root/.gradle
RUN rm -rf /opt/gradle

ADD ./gradle.zip /opt/
RUN unzip -o /opt/gradle.zip -d /opt/

ADD ./.gradle.zip /root/.gradle/
RUN unzip -o /root/.gradle/.gradle.zip -d /root/.gradle
ENV PATH=&quot;/opt/gradle/gradle-6.3/bin:${PATH}&quot;
ENV GRADLE_HOME=&quot;opt/gradle/gradle-6.3&quot;
RUN chmod 777 /opt/gradle/gradle-6.3/bin/*
ENV JAVA_HOME=&quot;/opt/java/openjdk&quot;

Now zip c:\users\your-user-name.gradle folder contents (not the folder itself) as '.gradle.zip' and place it in the above folder. Next also place gradle.zip (this would be gradle software downloaded, and when you unzip this gradle.zip, it should have gradle-6.3 in it, and that would have all of Gradle software. You can edit above 'Dockerfile' to have right accordingly otherwise).

As I'm running all of this on windows, I have 'docker desktop' installed on my machine and selected 'switch to linux containers' too. If you do not have this software, you need to get this installed. Again assuming you are not behind a proxy, you'll not have all of that proxy related harrasment and things should be seamless for Docker installation.

Next we need to 'build' docker image using above 'Dockerfile'.

Microsoft Windows [Version 10.0.17763.1217]
(c) 2018 Microsoft Corporation. All rights reserved.

C:\sw\hlf-scripts\javaenv-image-2&gt;dir
 Volume in drive C is Windows
 Volume Serial Number is AE8A-E101

 Directory of C:\sw\hlf-scripts\javaenv-image-2

02-06-2020  00:20    &lt;DIR&gt;          .
02-06-2020  00:20    &lt;DIR&gt;          ..
02-06-2020  00:19        68,813,513 .gradle.zip
01-06-2020  21:21               412 Dockerfile
01-06-2020  17:15       101,876,236 gradle.zip

C:\sw\hlf-scripts\javaenv-image-2&gt;docker build .
Sending build context to Docker daemon  170.7MB
Step 1/11 : FROM hyperledger/fabric-javaenv:1.4
 ---&gt; 190c5452a677
Step 2/11 : RUN rm -rf /root/.gradle
 ---&gt; Running in 1bee6799c989
Removing intermediate container 1bee6799c989
 ---&gt; e80c78e7f151
Step 3/11 : RUN rm -rf /opt/gradle
 ---&gt; Running in 8b92d2062a0e
Removing intermediate container 8b92d2062a0e
 ---&gt; 9a8b7ebfd19a
Step 4/11 : ADD ./gradle.zip /opt/
 ---&gt; 6c32d08ac3d6
Step 5/11 : RUN unzip -o /opt/gradle.zip -d /opt/
 ---&gt; Running in db8bbf7af51c
Archive:  /opt/gradle.zip
   creating: /opt/gradle/
   creating: /opt/gradle/gradle-6.3/
   creating: /opt/gradle/gradle-6.3/bin/
  inflating: /opt/gradle/gradle-6.3/bin/gradle
  inflating: /opt/gradle/gradle-6.3/bin/gradle.bat

	...

  inflating: /opt/gradle/gradle-6.3/lib/xml-apis-1.4.01.jar
  inflating: /opt/gradle/gradle-6.3/LICENSE
  inflating: /opt/gradle/gradle-6.3/NOTICE
  inflating: /opt/gradle/gradle-6.3/README
Removing intermediate container db8bbf7af51c
 ---&gt; 00b1723e518d
Step 6/11 : ADD ./.gradle.zip /root/.gradle/
 ---&gt; 19cab7daafba
Step 7/11 : RUN unzip -o /root/.gradle/.gradle.zip -d /root/.gradle
 ---&gt; Running in cda0aad70e6f
Archive:  /root/.gradle/.gradle.zip
   creating: /root/.gradle/6.3/
   creating: /root/.gradle/6.3/fileChanges/
 extracting: /root/.gradle/6.3/fileChanges/last-build.bin
   creating: /root/.gradle/6.3/fileHashes/

	...
	
 extracting: /root/.gradle/vcs-1/gc.properties
   creating: /root/.gradle/workers/
Removing intermediate container cda0aad70e6f
 ---&gt; bd42d756dcf7
Step 8/11 : ENV PATH=&quot;/opt/gradle/gradle-6.3/bin:${PATH}&quot;
 ---&gt; Running in 3d84e00c5b82
Removing intermediate container 3d84e00c5b82
 ---&gt; ef445b162906
Step 9/11 : ENV GRADLE_HOME=&quot;opt/gradle/gradle-6.3&quot;
 ---&gt; Running in 41c1a2017e9f
Removing intermediate container 41c1a2017e9f
 ---&gt; c77880c756fd
Step 10/11 : RUN chmod 777 /opt/gradle/gradle-6.3/bin/*
 ---&gt; Running in 77eb321c94ce
Removing intermediate container 77eb321c94ce
 ---&gt; 3e4e65c47c61
Step 11/11 : ENV JAVA_HOME=&quot;/opt/java/openjdk&quot;
 ---&gt; Running in 4bc72d56e33d
Removing intermediate container 4bc72d56e33d
 ---&gt; eba22c19da02
Successfully built eba22c19da02
SECURITY WARNING: You are building a Docker image from Windows against a non-Windows Docker host. All files and directories added to build context will have &#39;-rwxr-xr-x&#39; permissions. It is recommended to double check and reset permissions for sensitive files and directories.

C:\sw\hlf-scripts\javaenv-image-2&gt;

Check docker image list, and you should find the newly crated image in there. In the below list, see the first one, that is the one created now. It has REPOSITORY and TAG as <none>. Observe that the IMAGEID for this newly created image is 'eba22c19da02'. This would later be used in command below.

C:\sw\hlf-scripts\javaenv-image-2&gt;docker image ls
REPOSITORY                                                                                               TAG                 IMAGE ID            CREATED             SIZE
&lt;none&gt;                                                                                                   &lt;none&gt;              eba22c19da02        4 minutes ago       4.94GB
dev-peer0.org2.example.com-fabcar-1.0-264b0a1cb5efbecaac5cf8990339c24474dc8435c6e10f10f2be565d555d0e94   latest              32aca2e8365e        5 hours ago         4.58GB
dev-peer0.org1.example.com-fabcar-1.0-5c906e402ed29f20260ae42283216aa75549c571e2e380f3615826365d8269ba   latest              89f8611e67f7        5 hours ago         4.58GB
hyperledger/fabric-javaenv                                                                               1.4                 190c5452a677        22 hours ago        4.56GB
hyperledger/fabric-ccenv                                                                                 1.4                 774f228847d4        37 hours ago        1.79GB
openjdk                                                                                                  latest              0ce6496aae74        6 weeks ago         497MB
hyperledger/fabric-ca                                                                                    1.4                 3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-ca                                                                                    1.4.6               3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-ca                                                                                    latest              3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-tools                                                                                 1.4.6               0f9743ac0662        3 months ago        1.49GB
hyperledger/fabric-tools                                                                                 latest              0f9743ac0662        3 months ago        1.49GB
hyperledger/fabric-orderer                                                                               1.4                 84eaba5388e7        3 months ago        120MB
hyperledger/fabric-orderer                                                                               1.4.6               84eaba5388e7        3 months ago        120MB
hyperledger/fabric-orderer                                                                               latest              84eaba5388e7        3 months ago        120MB
hyperledger/fabric-peer                                                                                  1.4                 5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-peer                                                                                  1.4.6               5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-peer                                                                                  latest              5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-zookeeper                                                                             0.4                 ede9389347db        7 months ago        276MB
hyperledger/fabric-zookeeper                                                                             0.4.18              ede9389347db        7 months ago        276MB
hyperledger/fabric-zookeeper                                                                             latest              ede9389347db        7 months ago        276MB
hyperledger/fabric-kafka                                                                                 0.4                 caaae0474ef2        7 months ago        270MB
hyperledger/fabric-kafka                                                                                 0.4.18              caaae0474ef2        7 months ago        270MB
hyperledger/fabric-kafka                                                                                 latest              caaae0474ef2        7 months ago        270MB
hyperledger/fabric-couchdb                                                                               0.4                 d369d4eaa0fd        7 months ago        261MB
hyperledger/fabric-couchdb                                                                               0.4.18              d369d4eaa0fd        7 months ago        261MB
hyperledger/fabric-couchdb                                                                               latest              d369d4eaa0fd        7 months ago        261MB

Now we want to tell docker to use this newly created image as 'hyperledger/fabric-javaenv' image (which later would be picked up by HLF during HLF network creation). I'm running HLF 1.4 for all of this, and ':1.4' is given in the tag below. After the command is run, you can now observe that 'eba22c19da02' is now populated as 'hyperledger/fabric-javaenv' and TAG as 1.4

C:\sw\hlf-scripts\javaenv-image-2&gt;docker tag eba22c19da02 hyperledger/fabric-javaenv:1.4

C:\sw\hlf-scripts\javaenv-image-2&gt;docker image ls
REPOSITORY                                                                                               TAG                 IMAGE ID            CREATED             SIZE
hyperledger/fabric-javaenv                                                                               1.4                 eba22c19da02        8 minutes ago       4.94GB
dev-peer0.org2.example.com-fabcar-1.0-264b0a1cb5efbecaac5cf8990339c24474dc8435c6e10f10f2be565d555d0e94   latest              32aca2e8365e        5 hours ago         4.58GB
dev-peer0.org1.example.com-fabcar-1.0-5c906e402ed29f20260ae42283216aa75549c571e2e380f3615826365d8269ba   latest              89f8611e67f7        5 hours ago         4.58GB
hyperledger/fabric-ccenv                                                                                 1.4                 774f228847d4        37 hours ago        1.79GB
openjdk                                                                                                  latest              0ce6496aae74        6 weeks ago         497MB
hyperledger/fabric-ca                                                                                    1.4                 3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-ca                                                                                    1.4.6               3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-ca                                                                                    latest              3b96a893c1e4        3 months ago        150MB
hyperledger/fabric-tools                                                                                 1.4.6               0f9743ac0662        3 months ago        1.49GB
hyperledger/fabric-tools                                                                                 latest              0f9743ac0662        3 months ago        1.49GB
hyperledger/fabric-orderer                                                                               1.4                 84eaba5388e7        3 months ago        120MB
hyperledger/fabric-orderer                                                                               1.4.6               84eaba5388e7        3 months ago        120MB
hyperledger/fabric-orderer                                                                               latest              84eaba5388e7        3 months ago        120MB
hyperledger/fabric-peer                                                                                  1.4                 5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-peer                                                                                  1.4.6               5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-peer                                                                                  latest              5a52faa5d8c2        3 months ago        128MB
hyperledger/fabric-zookeeper                                                                             0.4                 ede9389347db        7 months ago        276MB
hyperledger/fabric-zookeeper                                                                             0.4.18              ede9389347db        7 months ago        276MB
hyperledger/fabric-zookeeper                                                                             latest              ede9389347db        7 months ago        276MB
hyperledger/fabric-kafka                                                                                 0.4                 caaae0474ef2        7 months ago        270MB
hyperledger/fabric-kafka                                                                                 0.4.18              caaae0474ef2        7 months ago        270MB
hyperledger/fabric-kafka                                                                                 latest              caaae0474ef2        7 months ago        270MB
hyperledger/fabric-couchdb                                                                               0.4                 d369d4eaa0fd        7 months ago        261MB
hyperledger/fabric-couchdb                                                                               0.4.18              d369d4eaa0fd        7 months ago        261MB
hyperledger/fabric-couchdb                                                                               latest              d369d4eaa0fd        7 months ago        261MB

C:\sw\hlf-scripts\javaenv-image-2&gt;

Now proceed with your Java HLF network creation and your chain code install and isntantiate should succeed.

huangapple
  • 本文由 发表于 2020年5月30日 11:32:04
  • 转载请务必保留本文链接:https://go.coder-hub.com/62097435.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定