윈도우 환경에서 Hyperledger Composer 개발 환경 구축하는 과정을 정리하는 글

Hyperledger Composer & Fabric 설치에 필요한 개발 툴

  • OS : Ubuntu Linux 14.04 / 16.04 LTS (both 64-bit), or Mac OS 10.12
  • Docker Engine : Version 17.03 or higher
  • Docker-Compose : Version 1.8 or higher
  • Node : 8.9 or higher (version 9 is not supported)
  • npm : v5.x
  • git : 2.9.x or higher
  • Python : 2.7.x
  • Editor : A code editor of user choice, recommend VSCode

1. 개발 환경 설치

Windows 10 pro 설정

제어판 > 프로그램 > 프로그램 및 기능 > Windows 기능 켜기/끄기 > Hyper-V 체크

  • Hyper-V

prerequisites 다운로드

위에 명시된 hyperledger composer 설치를 위해 필요한 시스템 패키지를 다운로드한다.

1
2
3
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
chmod u+x prereqs-ubuntu.sh
./prereqs-ubuntu.sh

패키지별 버전 확인을 통해 잘 설치되었는지 체크한다.

1
2
3
4
5
6
7
8
9
10
11
nodejs -v # node version check

npm -v # npm version check

git --version # git version check

python --version # python version check

docker -v # docker version check

docker-compose -v # docker-compose version check

3. 컴포넌트 설치

composer-cli는 필수 CLI 툴이고, 나머지는 개발 환경 구성에 꼭 필요한 부분은 아니다.

하지만 공식 사이트에서는 튜토리얼을 진행하거나 어플리케이션 개발을 할 때 유용하므로 함께 설치할 것을 권장하고 있다.

CLI 툴 설치

  1. 코어 CLI 툴

    1
    npm install -g composer-cli@0.20
  1. RESTful API Server를 띄워주는 기능

    1
    npm install -g composer-rest-server@0.20
  1. 어플리케이션 assets 생성에 유용

    1
    npm install -g generator-hyperledger-composer@0.20
  1. generator-hyperledger-composer 같은 기능을 이용한 어플리케이션 생성을 위한 툴 Yeoman

    1
    npm install -g yo

Playground 설치

  1. Playground - 간단한 수정, 테스팅을 브라우저 UI 환경에서 제공

    1
    npm install -g composer-playground@0.20

Hyperledger Fabric 설치

1
2
3
4
mkdir ~/fabric-dev-servers && cd ~/fabric-dev-servers

curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz
1
2
3
cd ~/fabric-dev-servers
export FABRIC_VERSION=hlfv12
./downloadFabric.sh

Hyperledger Fabric 시작/종료

런타임을 처음 시작하는 경우 start 스크립트 실행 후 PeerAdmin card를 생성해야 한다.

1
2
3
4
cd ~/fabric-dev-servers
export FABRIC_VERSION=hlfv12
./startFabric.sh
./createPeerAdminCard.sh

이후 런타임을 시작하거나 정지시킬 때는 ~/fabric-dev-servers/stopFabric.sh, ~/fabric-dev-servers/startFabric.sh을 이용하면 된다.

개발 세션을 종료할 경우엔 ~/fabric-dev-servers/stopFabric.sh 실행 후에 ~/fabric-dev-servers/teardownFabric.sh를 사용하면 된다. 만약 teardown 스크립트를 실행한다면, 다음에 런타임을 시작할 때 처음 런타임 시작과 같이 새로운 PeerAdmin card를 생성해줘야한다.

Playground 실행

playground web app을 실행하는 방법

1
composer-playground

브라우저가 다음의 주소를 갖고 자동으로 열린다. http://localhost:8080/login

“My Business Networks” 화면에서 createPeerAdminCard 스크립트를 통해 생성한 PeerAdmin@hlfv1 카드가 보이지 않는다면 런타임이 정상적으로 시작되지 않은 것이다.

참고자료