[Hyperledger Fabric] Error Control
Blockchain

[Hyperledger Fabric] Error Control

반응형

Intro

  졸업 프로젝트로 "블록체인을 이용한 암표 거래 방지 시스템"을 구상하였다. 프론트엔드, 백엔드, 블록체인으로 나눠진 파트 중 블록체인 파트를 맡아 블록체인 네트워크 구성하는 것을 목표로 삼았다. 이더리움과 같은 공개형 플랫폼을 사용하는 것은 해당 프로젝트의 컨셉과 맞지 않다 판단하여 기업형 블록체인의 니즈(needs)를 충족시킬 수 있는 오픈소스 플랫폼, Hyperledger Fabric을 사용하기로 결정했다.

  본문에서는 필자가 Hyperledger Fabric의 Sample 중 test-network를 따와 프로젝트에 맞게 재구성하며 생긴 몇몇 에러들에 대해 소개하고 해결한 방법을 소개하고 있다. 사용자마다 다른 환경과 스크립트가 이 글을 보고 도움을 받으려는 사람들과 달라서 그대로 적용했을 때 안될 수도 있으므로 이를 유의하며 글을 읽어주길 바란다.

  부족한 점이 있다면 언제든 피드백 주길 바라고, 필자의 환경을 잘 살펴보며 혹여나 궁금한 점이 생긴다면 언제든지 물어봐주길 바란다.

Github Repository: https://github.com/TwoPair/ticket-trade

 

GitHub - TwoPair/ticket-trade: Make your own event & Prevent it from scalpers

Make your own event & Prevent it from scalpers. Contribute to TwoPair/ticket-trade development by creating an account on GitHub.

github.com

 

Environment

Notebook

MacBook Pro 19년도, i9-9세대, OS - Sonoma 14.0

Software

Docker Desktop 4.24.2
IntelliJ IDEA 2023.2.1 (Ultimate Edition)

Java SDK 17
Gradle 8.2

Hyperledger Fabric 2.5.4

 

Errors

1. deployCC 도중 생기는 /var/run/docker.sock 연결 안 됨

Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode':
could not build chaincode: docker build failed: docker image inspection failed:
Get "http://unix.sock/images/dev-peer0.seller.ticket.com-chaincode_1.0-b84019bfe97e7989c7141146d6c431a53cfa67e62b2afd6c2024baf2e7f8da2b-44d791f0da52d2304fc93accfad57c1f81167dab73233a3b44bcabb28ad19d4b/json":
dial unix /var/run/docker.sock: connect: no such file or directory

 

peer lifecycle chaincode queryinstalled --output json 명령어가 실행되는 도중 발생한 에러다. /var/run/docker.sock이 존재하지 않아 생기는 오류인가 싶어 쉘에서 찾아보았다. 그랬더니 /var/run 밑에 docker.sock이 존재하지 않아 Docker Desktop의 설정을 들어가 보았다.

위의 설정이 켜져 있지 않아 로컬에 생성되지 않아 보였다. 그래서 해당 설정을 켜주니 ls -al /var/run 을 실행했을 때 잘 생성된 것이 확인하고 deployCC를 다시 실행시켰지만 여전히 같은 에러가 발생되었다.

그래서 기존에 docker compose 설정 파일들(.yaml)에 volume으로 매핑이 돼있지 않아 인식을 못 하는 것 같아서 해당 라인을 각 peer들에게 추가해 주었다.

또다시 deployCC를 실행해 주자 그제야 아무런 문제 없이 잘 넘어가는 것을 확인했다.

2. 

 

반응형