如何使用docker-compose启动中间ca?

Hon*_*hah 6 docker blockchain hyperledger hyperledger-fabric hyperledger-fabric-ca

我遵循的步骤:

1)用1-ca(即root ca),1-orderer,1-peer和1-couchdb启动织物

2)我将shell连接到ca,它是root并触发2个命令来注册中间ca.

  fabric-ca-client enroll -u http://admin:adminpw@localhost:7054
  fabric-ca-client register --id.name ica --id.attrs '"hf.Registrar.Roles=user,peer",hf.Revoker=true,hf.IntermediateCA=true' --id.secret icapw
Run Code Online (Sandbox Code Playgroud)

3)我按如下方式启动了ca1容​​器:

services:
  ca1.example.com:
    image: hyperledger/fabric-ca:x86_64-1.1.0
    environment:
      - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
      - FABRIC_CA_SERVER_PORT=8054
      - FABRIC_CA_SERVER_CA_NAME=ca1.example.com
    ports:
      - "8054:8054"
    command: sh -c 'fabric-ca-server start -b admin:adminpw -u http://ica:icapw@ca.example.com:7054'
    container_name: ca1.example.com
    networks:
      - basic
Run Code Online (Sandbox Code Playgroud)

但它总是创建默认证书,所以我从容器中删除所有,然后再次启动命令,当我尝试使用该中间ca注册管理员时,它会给我以下错误:

signed certificate with serial number 619423114660023963149266564884451731119475746692
ca1.example.com    | 2018/09/20 06:38:53 [INFO] 127.0.0.1:47144 POST /enroll 500 0 "Certificate signing failure: Failed to insert record intodatabase: attempt to write a readonly database"
Run Code Online (Sandbox Code Playgroud)

我不确定我遵循的流程.所以建议我遵循的确切步骤,如果步骤正确,那么这个错误的原因.

我已按照文档:https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.htm