Переменные среды Hyperledger передаются в контейнер docker с цепным кодом

#security #blockchain #hyperledger #hyperledger-fabric

#Безопасность #блокчейн #гиперледж #hyperledger-ткань

Вопрос:

У меня есть вопрос относительно переменных среды, которые передаются через файл docker-compose.

У меня есть цепной код, который выполняет проверку безопасности, когда безопасность включена. Он проверяет, включена ли безопасность через ядро.API SecurityEnabled(). Я включаю / отключаю безопасность с помощью docker-compose env. переменная CORE_SECURITY_ENABLED.

Это прекрасно работает в режиме разработки. Однако, когда я развертываю цепной код в режиме, отличном от режима разработки, я получаю ядро.SecurityEnabled() как false, хотя моя переменная env передается как true. Я осмотрел контейнеры docker. Контейнер Docker, выполняющий одноранговый узел, возвращает переменную env CORE_SECURITY_ENABLED=true по команде env. Однако контейнер docker, в котором выполняется цепной код, не имеет переменной env CORE_SECURITY_ENABLED. Это будет набирать ценность из ядра.yaml, который установлен как false.

Соответствует ли это дизайну? В производственном режиме мы должны вносить изменения в ядро.файл yaml вместо того, чтобы зависеть от переменной env, передаваемой через docker-compose?

Комментарии:

1. Ниоткуда нет ответа, поэтому возникла проблема в hyperledger Jira FAB-1188

Ответ №1:

Я использую docker-compose, как указано ниже, чтобы получить CORE_SECURITY_ENABLED=true / false . Вы пробовали указывать переменные среды таким образом?

     membersrvc:
      image: hyperledger/fabric-membersrvc
      ports:
        - "7054:7054"
      command: membersrvc
    vp0:
      image: hyperledger/fabric-peer
      ports:
        - "8085:7050"
        - "8080:7053"
        - "30303:30303"
        - "30304:30304"
      environment:
        - CORE_PEER_ADDRESSAUTODETECT=true
        - CORE_SECURITY_ENABLED=true
        - CORE_SECURITY_PRIVACY=true
        - CORE_VM_ENDPOINT=http://172.17.0.1:2375
        - CORE_PEER_PKI_ECA_PADDR=membersrvc:7054
        - CORE_PEER_PKI_TCA_PADDR=membersrvc:7054
        - CORE_PEER_PKI_TLSCA_PADDR=membersrvc:7054
        - CORE_LOGGING_LEVEL=DEBUG
        - CORE_PEER_ID=vp0
        - CORE_SECURITY_ENROLLID=test_vp0
        - CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT
      links:
        - membersrvc
      command: sh -c "sleep 35; peer node start  --logging-level=DEBUG"
 

Если вы получили ответ на свой запрос от FAB jira, пожалуйста, проигнорируйте это сообщение.