이글은 2018년 중순에 작성했던 글을 옮겨온 글입니다. 현재와 많이 다를수 있으니 참고해주시기 바랍니다.
최근 들었던 소식으로는 하이퍼레져 컴포져 개발을 더이상 지원하지 않는다고 했는데 이런게 있구나 하고 참고하셨으면 하는 바램입니다.
저번 포스팅에 이어서 오늘은 직접 하이퍼레져를 우분투에 설치하고 다뤄보는 시간을 갖도록 하겠습니다
다들 저번시간에 진행했던 버추얼박스에서 우분투를 실행해주세요 그 후에 hyperledger composer를 사용하는데 필수 툴을 다운받겠습니다.
- npm install -g composer-cli@0.20
- npm install -g composer-rest-server@0.20
- npm install -g generator-hyperledger-composer@0.20
- npm install -g yo
- npm install -g composer-playground@0.20
위에 명령어를 터미널에서 실행해주시면 설치를 기다려주세요.
fabric-dev-servers 폴더를 생성하고, 그 안에 hyperledger-fabric설치를 위한 파일을 다운받고 압축까지 풀어주세요.
- 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
이제 fabric-dev-servers폴더안에 위의 그림과같은 파일들이 생성된걸 확인 하셨으면 downloadFabric.sh 파일을 실행해주세요
- ./downloadFabric.sh
설치가 다 완료되었으 실행 및, 피어관리자카드를 만드는 단계를 진행하겠습니다.
- ./startFabric.sh
- ./createPeerAdminCard.sh
정상적으로 오류가 없이 진행이 되셨다면 터미널창에서 카드가 생성된게 아래 스크린샷처럼 보이실겁니다.
카드라는것은 비지니스 네트워크에 접근할수있는 권한을 부여하고, 필요한 정보를 담고있는 신분증같은 역할을 담당하고 있습니다 Hyperledger Fabric 네트워크에 대해 안전하고, 편리하게 접근할수있도록 해주는 기능을 하고있습니다.
이부분에서는 Admin에대한 카드만 생성하였고, 이제 직접 playground를 실행해서 카드를 생성해보고 샘플예제를 실행해보도록 하겠습니다. playground를 실행하겠습니다
- composer-playground
127.0.0.1:8080로 접속되는걸 확인하실수가 있어요.앞으로 포트포워딩 기능을 통해 윈도우에서 playground를 사용하겠습니다
버추얼박스에서 실행중인 우분투이미지파일을 오른쪽클릭후 설정에 들어가셔서 네트워크->고급->포트포워딩 클릭해주세요
3000번과 8080번 포트를 둘다 추가시켜주세요.
지금은 8080번 포트만 사용하지만 다음에 실습할 Rest서버에서 3000번포트로 사용할 예정이기 때문입니다
그리고 8080포트로 접속해보도록 하겠습니다.
초기화면에 카드가 하나보이는데 위에서 ./CreatePeerAdmin 명령어로 생성한 어드민카드입니다.
그럼 바로옆에 카드를 하나더 생성하기위해 Deploy a new business cards를 클릭해주세요.
아래로 내려보시면 여러가지 Fabric 예제가 보이실거예요 저흐;는 carauction-network를 사용해서 테스트를 해보도록 하겠습니다.
이부분에서 인증방식을 id and secret로 체크해주시고 Enrollment ID : admin Enrollment Secret : adminpw 입력해주세요.
그리고 맨위에 admin card name 설정하는 부분이 비어있죠? 편하실대로 써도되지만, 저는 편의를 위해 admin@carauction-network라고 적을게요. 제경험상 email형식을 제대로 맞추지 않으면 배포중에 오류가 생기니까 참고해주세요.
그리고 우측에 Deploy버튼을 눌러주시면 됩니다!
여기서도 시간이 꽤걸리는데 우분투로 돌아가서 playground 실행시킨 터미널을 보시면 열심히 생성하고 있는중입니다.
정상적으로 새로운 카드가 생성이 된다면 Connect now를 클릭해주세요
이부분이 바로 비지니스 모델을 정의하는 곳입니다. 쉽게 말해서, 내가 원하는 규칙을 프로그래밍 시키고, hyperledger 네트워크와 연결이 되는 페이지 입니다.
이부분은 수정하지않고, 저희는 Hyperledger에서 제공해주는 예제를 사용해보도록 하겠습니다.
Test탭으로 들어간후, 테스트를 진행하겠습니다 옥션 참여할 멤버부터 생성하도록 할게요
전 AAA,BBB,CCC라는 세개의 멤버를 생성했어요
balance도 임의로주시고, 이름,이메일도 임의로 주세요 각 멤버의 고유 ID로 활용되는게 email이니 중복되지않게 잘 작성해주세요
그다음 차량을 한대 만들어보겠습니다.
Vehicle 탭에서 AAA@carauction.com의 소유로 차량을 한대 생성했어요.
vin은 각차량마다 가지고있는 고유번호인데, 그냥 제가 알기쉽게 간단하게 지정해줬습니다
그 다음 차량 리스팅을통해 경매에 등록해보도록 하겠습니다.
"listingId": "listing1",
"reservePrice": 1000,
"description": "",
"state": "FOR_SALE",
"vehicle": "resource:org.acme.vehicle.auction.Vehicle#car1"
vehicle부분에서는 차량 생성할때 vin 적으셨던거 기억나시죠? 그값을 적어주시면 됩니다
자이제 좌측 하단부분에 Submit Transaction버튼을 클릭해주세요
빨간 박스부분을 Offer로 바꿔주시고, 위에처럼 입력하고 submit버튼을 클릭해주세요
BBB@carauction.com 멤버가 3000원에 입찰을했으니 CCC@carauction.com 멤버로 5000원에 입찰을 한번더 하고,
경매를 끝내보도록하죠.
Submit Transaction 버튼을 다시한번 눌러주세요
그러면 경매가 끝나게되고, 최고입찰자에게 자동차가 넘어가게됩니다
CCC의 balance가 5000원줄고 AAA의 balance가 5000원 늘은게 보이시죠? 이제 자동차의 소유자를 확인해보겠습니다.
CCC로 넘어간게 보이시나요.
간단하게 하이퍼레져 예제 하나를 실습했는데 다른 예제도 많으니 시간되실때 실습해보시면 좋을거같아요.
수고하셨습니다
'하이퍼레져' 카테고리의 다른 글
hyperledger composer 튜토리얼 따라하기(1) (0) | 2020.03.08 |
---|---|
hyperledger가 뭐예요? (1) (0) | 2020.03.06 |