SlideShare une entreprise Scribd logo
1  sur  70
Télécharger pour lire hors ligne
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Hyperledger Composer
Korea Polytechnics (dept. of smart finance)
한국폴리텍대학 스마트금융과
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
intro
source : https://hyperledger.github.io/composer/latest/introduction/introduction
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
intro
 Hyperledger Composer enables architects and developers to quickly create "full-stack" blockchain
solutions. I.e. business logic that runs on the blockchain, REST APIs that expose the blockchain logic to
web or mobile applications, as well as integrating the blockchain with existing enterprise systems of
record.
source : https://hyperledger.github.io/composer/latest/introduction/solution-architecture.html
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
prerequisites
 Virtual Box에 Ubuntu(LTS 16.04) 설치
 Root 이외 계정 추가시 계정명을 hyper 로 입력(password: hyper)
 Disk 용량 : 60GB 이상
 메모리 : 6~8 GB 이상
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper 계정에 sudo 권한 부여
 sudo visudo 실행 (편집화면은 VI 에디터 아님)
아래 적색 박스 부분 입력하여 hyper계정에 sudo 권한 부여
편집 완료 후, Ctrl+X로 Exit하면
저장이름이 /etc/sudoers.d.tmp로 나오는데,
.tmp를 삭제하고 엔터키를 입력하여 저장한다.
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
개발환경 설치
curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
chmod u+x prereqs-ubuntu.sh
./prereqs-ubuntu.sh
soruce .bashrc
python2.7, docker, node, npm 을 설치
위에서 설정된 환경변수를 바로 반영시킴
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyperledger composer 도구 설치
npm install -g composer-cli
npm install -g composer-rest-server
npm install -g generator-hyperledger-composer
npm install -g yo
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyperledger fabric composer shell 다운로드
mkdir fabric-tools
cd fabric-tools
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
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyperledger fabric docker 이미지 다운로드
sudo ./downloadFabric.sh
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyperledger compser 시작과 종료
 ./startFarbric.sh
 실행 상태 확인 : docker ps
 ./stopFabric.sh
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
1강
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
visualstudio code (선택)
 https://code.visualstudio.com/download
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
VisualStudio Code – adding extension (선택)
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground 맛보기
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Asset 3597은 Participant 7144가 소유자이며
2222의 값을 가졌다.
Asset 3597의 값을 33333으로 업데이트
업데이트후 이벤트 발생 확인
Playground 맛보기
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
모델 생성
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Overview
 Pain Point
가시성 저하
실시간 정보확인
 With Blockchain …
정보 접근성 향상 (실시간성)
비용감소
Main Office
B2B Partner
Customer
사진 출처 : http://www.thejobnews.kr/news/articleView.html?idxno=1836
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Business Domain Model (.cto)
 Namespace
 Resource (Assets, Participants, Tx, Events)
ModelModel
import is possible
Model
Model
Model
Model
Model
Model
Model
spreading is also possible
but, namespace is only confined in one model
so, model file name convention is like this : namespace.cto
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
we need 3 models
 truck.cto
 participant.cto
 dispatcher.cto
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Truck 모델 생성
hyper@hwy:~/fabric-tools/kopodeliverysvc/models$ more org.kopo.deliverysvc.truck.cto
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Write your model definitions here
*/
namespace org.kopo.deliverysvc.truck
participant User identified by email {
o String email
}
asset SampleAsset identified by assetId {
o String assetId
o String value
}
transaction ChangeAssetValue {
o String newValue
--> Asset relatedAsset
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Truck 모델 수정
namespace org.kopo.deliverysvc.truck
/** Kopo has truck*/
asset Truck identified by truckId {
o String truckId // truck plate number
o Ownership ownershipType default="OWNED"
o String location // 차고지
o String fee
o Integer status // 0. not departed 100. departed 200. on delivery
o String memo optional
}
enum Ownership {
o LEASED
o OWNED
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Participant 모델 생성
namespace org.kopo.deliverysvc.participant
abstract participant KOPOParticipant identified by parcelKey {
o String parcelKey
o String startingPoint
o String endPoint
o String estimatedPrice
o String fee
o Integer status // 0. not departed 100. departed 200. on delivery 300. arrived ...
o String memo optional
}
concept Contact {
o String fName
o String lname
o String email
o String mobile
o String tel
}
participant KOPONetworkAdmin extends KOPOParticipant {
}
participant KOPOCustomer extends KOPOParticipant {
o Contact senderContact
o Contact receiverContact
}
participant KOPOB2BPartner extends KOPOParticipant {
o String kind
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Dispatcher 모델링
namespace org.kopo.deliverysvc.dispatcher
import org.kopo.deliverysvc.truck.Truck
asset Dispatcher identified by dispatcherNumber {
o String dispatcherNumber
o Route route
o String[] aliasDispatcherNumber
--> Truck truck optional
}
concept Route {
o String origin
o String destination
o String[] stops
}
강서01 배차에 Truck0001, Truck0002 … 할당
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
CLI Tool의 활용 bna 생성
 bna 파일 만들기
 mkdir dist
 composer archive create -a dist/kopodeliverysvc.bna --sourceType dir --
sourceName .
hyper@hwy:~/fabric-tools/kopodeliverysvc$ composer archive create -a dist/kopodeliverysvc1.bna --sourceType dir --sourceName .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/hyper/fabric-tools/kopodeliverysvc
Found:
Description: kopo delivery service
Name: kopodeliverysvc
Identifier: kopodeliverysvc@0.0.1
Written Business Network Definition Archive file to
Output file: dist/kopodeliverysvc1.bna
Command succeeded
package.json 이 위치한 경로에서 실행해야 함
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test
 Test  Asset  Truck  Create New Asset
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test (Asset Mapping)
 Test  Asset  Dispatcher  Create New Asset
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Number validation
namespace org.kopo.deliverysvc.truck
/** Kopo has truck*/
asset Truck identified by truckId {
o String truckId // truck plate number
o Ownership ownershipType default="OWNED"
o String location // 차고지
o String fee
o Integer status range = [0, 1000] // 0. not departed 100. departed 200. on delivery
o String memo optional
}
enum Ownership {
o LEASED
o OWNED
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
String validation
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test
 모델 변경 사항 반영
Define  해당 모델 CTO 파일 내용 수정 후 Deploy changes 클릭
 Dispatcher 번호 부여 규칙 변경으로 인하여 기존 Asset 삭제됨
 번호 부여 규칙에 맞게 재입력 필요
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
transactions
Participants
Transactions Events
Execute
Emits
Subscriber
Receives
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
transactions
 dispatcher.cto 하단에 추가
// 배차 할당
transaction allocateDispatcher {
o String origin
o String destination
o String[] stops
}
// 배차 할당 성공시 배차고유번호 부여
event dispatcherAllocated {
o String dispatcherNumber
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
transactions
transaction allocateDispatcher {
…
}
event dispatcherAllocated {
…
}
Annotations
JS function()
Composer API
Emits event
cto
JavaScript
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
transactions
transaction allocateDispatcher {
…
}
event dispatcherAllocated {
…
}
Annotations
JS function()
Composer API
Emits event
cto
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
transactions Scrpt.js
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
중간 점검
 최종 Model file (cto) 업로드
 Lib 디렉토리 생성하고 해당 위치에 script.js 업로드
 Bna 생성하기
composer archive create -a dist/kopodeliverysvc.bna --sourceType dir --
sourceName .
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test
 Bna 업로드 및 확인
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test
 Test  Submit Transaction
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Playground test
 Result
 배차는 완료되었는데 트럭은 아직 할당하지 않았음
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Model 수정(배차정보에 트럭 할당)
 Dispatcher.cto
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Transactions (배차정보에 트럭 할당)
이번에는 bna를 다시 빌드하지 않고,
Play ground 에서 변경 사항을
반영한 후에 deploy 기능으로 테스트해 보자.
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
결과 확인 (배차정보에 트럭 할당)
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Named query & deploy
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
named query
https://hyperledger.github.io/composer/v0.19/reference/query-language
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
named query test
쿼리 자체의 이상여부만 확인 가능함
실제 hyperledger fabric에서 구동하여 확인해야 함
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper@hwy:~/fabric-tools/kopodeliverysvc$ composer archive create -a dist/kopodeliverysvc.bna --sourceType dir --sourceName .
Creating Business Network Archive
Looking for package.json of Business Network Definition
Input directory: /home/hyper/fabric-tools/kopodeliverysvc
Found:
Description: kopo delivery service
Name: kopodeliverysvc
Identifier: kopodeliverysvc@0.0.1
Written Business Network Definition Archive file to
Output file: dist/kopodeliverysvc.bna
Command succeeded
사전 조건 : ./startFabric.sh 실행
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ pwd
/home/hyper/fabric-tools/kopodeliverysvc/dist
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ ll
total 16
drwxrwxr-x 2 hyper hyper 4096 Sep 27 11:36 ./
drwxrwxr-x 5 hyper hyper 4096 Sep 27 11:34 ../
-rw-rw-r-- 1 hyper hyper 8101 Sep 27 11:35 kopodeliverysvc.bna
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ composer network install -a ./kopodeliverysvc.bna -c PeerAdmin@hlfv1
✔ Installing business network. This may take a minute...
Successfully installed business network kopodeliverysvc, version 0.0.1
Command succeeded
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ composer network start -n kopodeliverysvc -c PeerAdmin@hlfv1 -V 0.0.1 -A admin -S adminpw
Starting business network kopodeliverysvc at version 0.0.1
Processing these Network Admins:
userName: admin
✔ Starting business network definition. This may take a minute...
Successfully created business network card:
Filename: admin@kopodeliverysvc.card
Command succeeded
Package.json
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ composer card import -f admin@kopodeliverysvc.card
Successfully imported business network card
Card file: admin@kopodeliverysvc.card
Card name: admin@kopodeliverysvc
Command succeeded
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ ll
total 20
drwxrwxr-x 2 hyper hyper 4096 Sep 27 11:44 ./
drwxrwxr-x 5 hyper hyper 4096 Sep 27 11:34 ../
-rw-rw-r-- 1 hyper hyper 1017 Sep 27 11:44 'admin@kopodeliverysvc.card'
-rw-rw-r-- 1 hyper hyper 8101 Sep 27 11:35 kopodeliverysvc.bna
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper@hwy:~$ cd .composer
hyper@hwy:~/.composer$ ll
total 20
drwxrwxr-x 5 hyper hyper 4096 Sep 26 06:13 ./
drwxr-xr-x 10 hyper hyper 4096 Sep 26 08:07 ../
drwxrwxr-x 4 hyper hyper 4096 Sep 27 11:47 cards/
drwxrwxr-x 4 hyper hyper 4096 Sep 27 11:47 client-data/
drwxrwxr-x 2 hyper hyper 4096 Sep 26 06:12 logs/
hyper@hwy:~/.composer$ cd cards/
hyper@hwy:~/.composer/cards$ ll
total 16
drwxrwxr-x 4 hyper hyper 4096 Sep 27 11:47 ./
drwxrwxr-x 5 hyper hyper 4096 Sep 26 06:13 ../
drwxr-x--- 3 hyper hyper 4096 Sep 27 11:47 'admin@kopodeliverysvc'/
drwxr-x--- 3 hyper hyper 4096 Sep 26 06:13 'PeerAdmin@hlfv1'/
hyper@hwy:~/.composer/cards$ cd ~/fabric-tools/kopodeliverysvc/dist/
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ composer network ping -c admin@kopodeliverysvc
The connection to the network was successfully tested: kopodeliverysvc
Business network version: 0.0.1
Composer runtime version: 0.20.9
participant: org.hyperledger.composer.system.NetworkAdmin#admin
identity: org.hyperledger.composer.system.Identity#32a89531df78bf0ba5040216314687ba7c6837adf0c315b909da71ced1918cdc
Command succeeded
카드의 위치와 이름 확인
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ composer network list -c admin@kopodeliverysvc
✔ List business network from card admin@kopodeliverysvc
models:
- org.hyperledger.composer.system
- org.kopo.deliverysvc.dispatcher
- org.kopo.deliverysvc.participant
- org.kopo.deliverysvc.truck
scripts:
- lib/script.js
registries:
org.kopo.deliverysvc.dispatcher.Dispatcher:
id: org.kopo.deliverysvc.dispatcher.Dispatcher
name: Asset registry for org.kopo.deliverysvc.dispatcher.Dispatcher
registryType: Asset
org.kopo.deliverysvc.truck.Truck:
id: org.kopo.deliverysvc.truck.Truck
name: Asset registry for org.kopo.deliverysvc.truck.Truck
registryType: Asset
org.kopo.deliverysvc.participant.KOPOB2BPartner:
id: org.kopo.deliverysvc.participant.KOPOB2BPartner
name: Participant registry for org.kopo.deliverysvc.participant.KOPOB2BPartner
registryType: Participant
org.kopo.deliverysvc.participant.KOPOCustomer:
id: org.kopo.deliverysvc.participant.KOPOCustomer
name: Participant registry for org.kopo.deliverysvc.participant.KOPOCustomer
registryType: Participant
org.kopo.deliverysvc.participant.KOPONetworkAdmin:
id: org.kopo.deliverysvc.participant.KOPONetworkAdmin
name: Participant registry for org.kopo.deliverysvc.participant.KOPONetworkAdmin
registryType: Participant
Command succeeded
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper@hwy:~/fabric-tools/kopodeliverysvc/dist$ composer-rest-server -c admin@kopodeliverysvc -n always -w true
Discovering types from business network definition ...
Discovering the Returning Transactions..
Discovered types from business network definition
Generating schemas for all types in business network definition ...
Registering named query: AllDispatchers
Registering named query: AllDispatchersWithSkipLimit
Registering named query: DispatchersOriginAndDestination
Generated schemas for all types in business network definition
Adding schemas for all types to Loopback ...
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org_kopo_deliverysvc_dispatcher_Route".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Swagger: skipping unknown type "org.kopo.deliverysvc.dispatcher.Dispatcher".
Added schemas for all types to Loopback
Web server listening at: http://localhost:3000
Browse your REST API at http://localhost:3000/explorer
localhost:3000/explorer
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
시험 데이터 입력 Named query 검증
localhost:3000/explorer
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
시험 데이터 입력 Named query 검증
localhost:3000/explorer
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Source : https://stackoverflow.com/questions/48070818/how-to-restart-the-fabric-composer-without-losing-the-existing-data
How to restart the fabric composer without losing the existing data?
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Skip/Limit in queries returning all results, ignoring parameters
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
ID management
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
[ID 추가] playground test
B2B 파트너 추가
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
[ID 추가] playground test
택배 사용 고객 추가
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
[ID 추가] playground test
ID 발급(B2B)
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
ID 발급(일반 사용자 고객)
[ID 추가] playground test
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
[ID 추가] playground test
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Participant 추가(B2B 파트너)
{
"kind": "파트너",
"parcelKey": "092819_1234567",
"startingPoint": "화곡",
"endPoint": "방화",
"estimatedPrice": "2500",
"fee": "500",
"status": 0,
"memo": "테스트"
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
Participant 추가(일반 사용자 고객)
{
"senderContact": {
"fName": "길동",
"lname": "홍",
"email": "string",
"mobile": "string",
"tel": "string"
},
"receiverContact": {
"fName": "순신",
"lname": "이",
"email": "string",
"mobile": "string",
"tel": "string"
},
"parcelKey": "092819-15131513",
"startingPoint": "방화",
"endPoint": "신도림",
"estimatedPrice": "2500",
"fee": "500",
"status": 0,
"memo": "테스트"
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
{
"parcelKey": "092819-11111111",
"startingPoint": "대구",
"endPoint": "전주",
"estimatedPrice": "2500",
"fee": "500",
"status": 0,
"memo": "테스트"
}
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
 Permissions.acl 추가하여 bna 생성  upgrade
composer archive create -a dist/kopodeliverysvc.bna --sourceType dir --sourceName .
composer network install -a dist/kopodeliverysvc.bna -c PeerAdmin@hlfv1
composer network upgrade -n kopodeliverysvc -c PeerAdmin@hlfv1 -V 0.0.3
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
hyper@hwy:~/$ composer identity issue -u 092819-11111111 -a org.kopo.deliverysvc.participant.KOPONetworkAdmin#092819-11111111 -c
admin@kopodeliverysvc –x
Issue identity and create Network Card for: 092819-11111111
✔ Issuing identity. This may take a few seconds...
Successfully created business network card file to
Output file: 092819-11111111@kopodeliverysvc.card
Command succeeded
hyper@hwy:~/$ composer identity issue -u bespin -a org.kopo.deliverysvc.participant.KOPONetworkAdmin#092819-11111111 -c admin@kopodeliverysvc -x
Issue identity and create Network Card for: bespin
✔ Issuing identity. This may take a few seconds...
Successfully created business network card file to
Output file: bespin@kopodeliverysvc.card
Command succeeded hyper@hwy:~/fabric-tools/fabric-scripts/hlfv12/composer$ composer card import -f bespin@kopodeliverysvc.card
Successfully imported business network card
Card file: bespin@kopodeliverysvc.card
Card name: bespin@kopodeliverysvc
Command succeeded
hyper@hwy:~/fabric-tools/fabric-scripts/hlfv12/composer$ composer network ping -c bespin@kopodeliverysvc
The connection to the network was successfully tested: kopodeliverysvc
Business network version: 0.0.2
Composer runtime version: 0.20.9
participant: org.kopo.deliverysvc.participant.KOPONetworkAdmin#092819-11111111
identity: org.hyperledger.composer.system.Identity#88c9ec94bcf8e8bf05e4b31324e83a6e621f4e9b96c4d5a91a28d61d7ba7974f
Command succeeded
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
{
"truckId": "TRK001",
"ownershipType": "LEASED",
"location": "seoul",
"fee": "0",
"status": 0,
"memo": "string"
}
AccessException: Participant 'org.kopo.deliverysvc.participant.KOPONetworkAdmin#092819-11111111’
does not have 'CREATE' access to resource 'org.hyperledger.composer.system.AddAsset
Package.json
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
rule KopoNetworkAdminPermissionSystem {
description: "can READ the system registries"
participant: "ANY"
operation: READ
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
rule NetworkControlPermission {
description: "give admin ALL access to system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.*"
action: ALLOW
}
rule ParticipantRegistryControlPermission {
description: "give admin ALL access to KOPO participant types"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.kopo.deliverysvc.participant.*"
action: ALLOW
}
rule ParticipantRegistryControlPermission2 {
description: "give admin ALL access to KOPO participant types"
participant: "org.kopo.deliverysvc.participant.KOPONetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.*"
action: ALLOW
}
rule ParticipantRegistryControlPermission3 {
description: "give admin ALL access to KOPO participant types"
participant: "org.kopo.deliverysvc.participant.KOPONetworkAdmin"
operation: ALL
resource: "org.kopo.deliverysvc.participant.*"
action: ALLOW
}
1. ACL 추가
composer archive create -a dist/kopodeliverysvc.bna --sourceType dir --sourceName .
composer network install -a dist/kopodeliverysvc.bna -c PeerAdmin@hlfv1
composer network upgrade -n kopodeliverysvc -c PeerAdmin@hlfv1 -V 0.0.3
2. Package.json 버전 수정
3. Bna 재빌드 및 네트워크 배포
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
rule ParticipantRegistryControlPermission4 {
description: "give admin ALL access to KOPO
participant types"
participant: "org.kopo.deliverysvc.participan
t.KOPONetworkAdmin"
operation: ALL
resource: "org.kopo.deliverysvc.truck.*"
action: ALLOW
}
composer archive create -a dist/kopodeliverysvc.bna --sourceType dir --sourceName .
composer network install -a dist/kopodeliverysvc.bna -c PeerAdmin@hlfv1
composer network upgrade -n kopodeliverysvc -c PeerAdmin@hlfv1 -V 0.0.3
2. Package.json 버전 수정
3. Bna 재빌드 및 네트워크 배포
1. ACL 수정
4. Rest server 실행 (카드명 주의  issue한 카드로 지정)
5. Asset(Truck) 추가 테스트
APCPCWM_4828539:WP_0000010WP_0000010APCPCWM_4828539:WP_0000010WP_000001
[ACL] For more details…
 https://hyperledger.github.io/composer/latest/reference/acl_language
 https://hyperledger.github.io/composer/latest/tutorials/acl-trading

Contenu connexe

Tendances

K8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみる
K8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみるK8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみる
K8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみるJUNICHI YOSHISE
 
Real World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsReal World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsBen Hall
 
Lessons from running potentially malicious code inside containers
Lessons from running potentially malicious code inside containersLessons from running potentially malicious code inside containers
Lessons from running potentially malicious code inside containersBen Hall
 
파이썬 개발환경 구성하기의 끝판왕 - Docker Compose
파이썬 개발환경 구성하기의 끝판왕 - Docker Compose파이썬 개발환경 구성하기의 끝판왕 - Docker Compose
파이썬 개발환경 구성하기의 끝판왕 - Docker Composeraccoony
 
Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)Ben Hall
 
Docker orchestration v4
Docker orchestration v4Docker orchestration v4
Docker orchestration v4Hojin Kim
 
Web scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannelWeb scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannelpurpleocean
 
Docker remote-api
Docker remote-apiDocker remote-api
Docker remote-apiEric Ahn
 
어릴 적 할머니가 들려주신 옛 wsgi
어릴 적 할머니가 들려주신 옛 wsgi어릴 적 할머니가 들려주신 옛 wsgi
어릴 적 할머니가 들려주신 옛 wsgiHyun-Mook Choi
 
Vagrant for real (codemotion rome 2016)
Vagrant for real (codemotion rome 2016)Vagrant for real (codemotion rome 2016)
Vagrant for real (codemotion rome 2016)Michele Orselli
 
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)Ruoshi Ling
 
Hands on Docker - Launch your own LEMP or LAMP stack - SunshinePHP
Hands on Docker - Launch your own LEMP or LAMP stack - SunshinePHPHands on Docker - Launch your own LEMP or LAMP stack - SunshinePHP
Hands on Docker - Launch your own LEMP or LAMP stack - SunshinePHPDana Luther
 
DCSF19 Tips and Tricks of the Docker Captains
DCSF19 Tips and Tricks of the Docker Captains  DCSF19 Tips and Tricks of the Docker Captains
DCSF19 Tips and Tricks of the Docker Captains Docker, Inc.
 
Component pack 6006 install guide
Component pack 6006 install guideComponent pack 6006 install guide
Component pack 6006 install guideRoberto Boccadoro
 
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...Docker, Inc.
 
Deploying Windows Containers on Windows Server 2016
Deploying Windows Containers on Windows Server 2016Deploying Windows Containers on Windows Server 2016
Deploying Windows Containers on Windows Server 2016Ben Hall
 
Docker command
Docker commandDocker command
Docker commandEric Ahn
 
Ansible 實戰:top down 觀點
Ansible 實戰:top down 觀點Ansible 實戰:top down 觀點
Ansible 實戰:top down 觀點William Yeh
 
Deep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksDeep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksLaurent Bernaille
 
Apache httpd 2.4: The Cloud Killer App
Apache httpd 2.4: The Cloud Killer AppApache httpd 2.4: The Cloud Killer App
Apache httpd 2.4: The Cloud Killer AppJim Jagielski
 

Tendances (20)

K8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみる
K8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみるK8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみる
K8s上の containerized cloud foundryとcontainerized open stackをprometheusで監視してみる
 
Real World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsReal World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js Applications
 
Lessons from running potentially malicious code inside containers
Lessons from running potentially malicious code inside containersLessons from running potentially malicious code inside containers
Lessons from running potentially malicious code inside containers
 
파이썬 개발환경 구성하기의 끝판왕 - Docker Compose
파이썬 개발환경 구성하기의 끝판왕 - Docker Compose파이썬 개발환경 구성하기의 끝판왕 - Docker Compose
파이썬 개발환경 구성하기의 끝판왕 - Docker Compose
 
Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)Running Docker in Development & Production (#ndcoslo 2015)
Running Docker in Development & Production (#ndcoslo 2015)
 
Docker orchestration v4
Docker orchestration v4Docker orchestration v4
Docker orchestration v4
 
Web scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannelWeb scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannel
 
Docker remote-api
Docker remote-apiDocker remote-api
Docker remote-api
 
어릴 적 할머니가 들려주신 옛 wsgi
어릴 적 할머니가 들려주신 옛 wsgi어릴 적 할머니가 들려주신 옛 wsgi
어릴 적 할머니가 들려주신 옛 wsgi
 
Vagrant for real (codemotion rome 2016)
Vagrant for real (codemotion rome 2016)Vagrant for real (codemotion rome 2016)
Vagrant for real (codemotion rome 2016)
 
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
 
Hands on Docker - Launch your own LEMP or LAMP stack - SunshinePHP
Hands on Docker - Launch your own LEMP or LAMP stack - SunshinePHPHands on Docker - Launch your own LEMP or LAMP stack - SunshinePHP
Hands on Docker - Launch your own LEMP or LAMP stack - SunshinePHP
 
DCSF19 Tips and Tricks of the Docker Captains
DCSF19 Tips and Tricks of the Docker Captains  DCSF19 Tips and Tricks of the Docker Captains
DCSF19 Tips and Tricks of the Docker Captains
 
Component pack 6006 install guide
Component pack 6006 install guideComponent pack 6006 install guide
Component pack 6006 install guide
 
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...
 
Deploying Windows Containers on Windows Server 2016
Deploying Windows Containers on Windows Server 2016Deploying Windows Containers on Windows Server 2016
Deploying Windows Containers on Windows Server 2016
 
Docker command
Docker commandDocker command
Docker command
 
Ansible 實戰:top down 觀點
Ansible 實戰:top down 觀點Ansible 實戰:top down 觀點
Ansible 實戰:top down 觀點
 
Deep dive in Docker Overlay Networks
Deep dive in Docker Overlay NetworksDeep dive in Docker Overlay Networks
Deep dive in Docker Overlay Networks
 
Apache httpd 2.4: The Cloud Killer App
Apache httpd 2.4: The Cloud Killer AppApache httpd 2.4: The Cloud Killer App
Apache httpd 2.4: The Cloud Killer App
 

Similaire à Hyperledger composer

DCHQ Cloud Application Platform | Linux Containers | Docker PaaS
DCHQ Cloud Application Platform | Linux Containers | Docker PaaSDCHQ Cloud Application Platform | Linux Containers | Docker PaaS
DCHQ Cloud Application Platform | Linux Containers | Docker PaaSdchq
 
Setting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntuSetting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntukesavan N B
 
Openshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhceOpenshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhceDarnette A
 
Software Composition Analysis in PHP
Software Composition Analysis in PHP Software Composition Analysis in PHP
Software Composition Analysis in PHP Piotr Horzycki
 
Docker for Ruby Developers
Docker for Ruby DevelopersDocker for Ruby Developers
Docker for Ruby DevelopersAptible
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to KubernetesPaul Czarkowski
 
Mastering Microservices with Kong (DevoxxUK 2019)
Mastering Microservices with Kong (DevoxxUK 2019)Mastering Microservices with Kong (DevoxxUK 2019)
Mastering Microservices with Kong (DevoxxUK 2019)Maarten Mulders
 
The 12 facets of the OpenAPI standard.pdf
The 12 facets of the OpenAPI standard.pdfThe 12 facets of the OpenAPI standard.pdf
The 12 facets of the OpenAPI standard.pdfCisco DevNet
 
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnSupply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnNUS-ISS
 
18 facets of the OpenAPI specification - Cisco Live US 2023
18 facets of the OpenAPI specification - Cisco Live US 202318 facets of the OpenAPI specification - Cisco Live US 2023
18 facets of the OpenAPI specification - Cisco Live US 2023Cisco DevNet
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using GoCloudOps2005
 
PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agents
PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agentsPVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agents
PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agentsAndrey Karpov
 
Hyperledger Composer architecture
Hyperledger Composer architectureHyperledger Composer architecture
Hyperledger Composer architectureSimon Stone
 
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB
 
PHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the CloudPHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the CloudSalesforce Developers
 
Jump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & GithubJump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & Githubhubx
 
Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!Michael Man
 
ESM Asset Model FlexConnector Developer's Guide for ESM 6.8c
ESM Asset Model FlexConnector Developer's Guide for ESM 6.8cESM Asset Model FlexConnector Developer's Guide for ESM 6.8c
ESM Asset Model FlexConnector Developer's Guide for ESM 6.8cProtect724v3
 
Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...
Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...
Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...Amazon Web Services
 

Similaire à Hyperledger composer (20)

DCHQ Cloud Application Platform | Linux Containers | Docker PaaS
DCHQ Cloud Application Platform | Linux Containers | Docker PaaSDCHQ Cloud Application Platform | Linux Containers | Docker PaaS
DCHQ Cloud Application Platform | Linux Containers | Docker PaaS
 
Setting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntuSetting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntu
 
Openshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhceOpenshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhce
 
Software Composition Analysis in PHP
Software Composition Analysis in PHP Software Composition Analysis in PHP
Software Composition Analysis in PHP
 
Docker for Ruby Developers
Docker for Ruby DevelopersDocker for Ruby Developers
Docker for Ruby Developers
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Mastering Microservices with Kong (DevoxxUK 2019)
Mastering Microservices with Kong (DevoxxUK 2019)Mastering Microservices with Kong (DevoxxUK 2019)
Mastering Microservices with Kong (DevoxxUK 2019)
 
The 12 facets of the OpenAPI standard.pdf
The 12 facets of the OpenAPI standard.pdfThe 12 facets of the OpenAPI standard.pdf
The 12 facets of the OpenAPI standard.pdf
 
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk MunnSupply Chain Security for Containerised Workloads - Lee Chuk Munn
Supply Chain Security for Containerised Workloads - Lee Chuk Munn
 
18 facets of the OpenAPI specification - Cisco Live US 2023
18 facets of the OpenAPI specification - Cisco Live US 202318 facets of the OpenAPI specification - Cisco Live US 2023
18 facets of the OpenAPI specification - Cisco Live US 2023
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using Go
 
PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agents
PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agentsPVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agents
PVS-Studio: analyzing pull requests in Azure DevOps using self-hosted agents
 
Hyperledger Composer architecture
Hyperledger Composer architectureHyperledger Composer architecture
Hyperledger Composer architecture
 
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
 
PHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the CloudPHP on Heroku: Deploying and Scaling Apps in the Cloud
PHP on Heroku: Deploying and Scaling Apps in the Cloud
 
Jump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & GithubJump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & Github
 
Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!
 
ESM Asset Model FlexConnector Developer's Guide for ESM 6.8c
ESM Asset Model FlexConnector Developer's Guide for ESM 6.8cESM Asset Model FlexConnector Developer's Guide for ESM 6.8c
ESM Asset Model FlexConnector Developer's Guide for ESM 6.8c
 
Docker in production
Docker in productionDocker in production
Docker in production
 
Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...
Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...
Automatically scaling your Kubernetes workloads - SVC210-S - Santa Clara AWS ...
 

Plus de wonyong hwang

Hyperledger Explorer.pptx
Hyperledger Explorer.pptxHyperledger Explorer.pptx
Hyperledger Explorer.pptxwonyong hwang
 
하이퍼레저 페이지 단위 블록 조회
하이퍼레저 페이지 단위 블록 조회하이퍼레저 페이지 단위 블록 조회
하이퍼레저 페이지 단위 블록 조회wonyong hwang
 
토큰 증권 개요.pptx
토큰 증권 개요.pptx토큰 증권 개요.pptx
토큰 증권 개요.pptxwonyong hwang
 
Vue.js 기초 실습.pptx
Vue.js 기초 실습.pptxVue.js 기초 실습.pptx
Vue.js 기초 실습.pptxwonyong hwang
 
Deploying Hyperledger Fabric on Kubernetes.pptx
Deploying Hyperledger Fabric on Kubernetes.pptxDeploying Hyperledger Fabric on Kubernetes.pptx
Deploying Hyperledger Fabric on Kubernetes.pptxwonyong hwang
 
k8s practice 2023.pptx
k8s practice 2023.pptxk8s practice 2023.pptx
k8s practice 2023.pptxwonyong hwang
 
HyperLedger Fabric V2.5.pdf
HyperLedger Fabric V2.5.pdfHyperLedger Fabric V2.5.pdf
HyperLedger Fabric V2.5.pdfwonyong hwang
 
Ngrok을 이용한 Nginx Https 적용하기.pptx
Ngrok을 이용한 Nginx Https 적용하기.pptxNgrok을 이용한 Nginx Https 적용하기.pptx
Ngrok을 이용한 Nginx Https 적용하기.pptxwonyong hwang
 
Nginx Https 적용하기.pptx
Nginx Https 적용하기.pptxNginx Https 적용하기.pptx
Nginx Https 적용하기.pptxwonyong hwang
 
Kafka JDBC Connect Guide(Postgres Sink).pptx
Kafka JDBC Connect Guide(Postgres Sink).pptxKafka JDBC Connect Guide(Postgres Sink).pptx
Kafka JDBC Connect Guide(Postgres Sink).pptxwonyong hwang
 
Nginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptxNginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptxwonyong hwang
 
Kafka monitoring using Prometheus and Grafana
Kafka monitoring using Prometheus and GrafanaKafka monitoring using Prometheus and Grafana
Kafka monitoring using Prometheus and Grafanawonyong hwang
 
주가 정보 다루기.pdf
주가 정보 다루기.pdf주가 정보 다루기.pdf
주가 정보 다루기.pdfwonyong hwang
 
App development with quasar (pdf)
App development with quasar (pdf)App development with quasar (pdf)
App development with quasar (pdf)wonyong hwang
 
Hyperledger Fabric practice (v2.0)
Hyperledger Fabric practice (v2.0) Hyperledger Fabric practice (v2.0)
Hyperledger Fabric practice (v2.0) wonyong hwang
 
Hyperledger fabric practice(pdf)
Hyperledger fabric practice(pdf)Hyperledger fabric practice(pdf)
Hyperledger fabric practice(pdf)wonyong hwang
 
BlockChain implementation by python
BlockChain implementation by pythonBlockChain implementation by python
BlockChain implementation by pythonwonyong hwang
 

Plus de wonyong hwang (20)

Hyperledger Explorer.pptx
Hyperledger Explorer.pptxHyperledger Explorer.pptx
Hyperledger Explorer.pptx
 
하이퍼레저 페이지 단위 블록 조회
하이퍼레저 페이지 단위 블록 조회하이퍼레저 페이지 단위 블록 조회
하이퍼레저 페이지 단위 블록 조회
 
토큰 증권 개요.pptx
토큰 증권 개요.pptx토큰 증권 개요.pptx
토큰 증권 개요.pptx
 
Vue.js 기초 실습.pptx
Vue.js 기초 실습.pptxVue.js 기초 실습.pptx
Vue.js 기초 실습.pptx
 
Deploying Hyperledger Fabric on Kubernetes.pptx
Deploying Hyperledger Fabric on Kubernetes.pptxDeploying Hyperledger Fabric on Kubernetes.pptx
Deploying Hyperledger Fabric on Kubernetes.pptx
 
k8s practice 2023.pptx
k8s practice 2023.pptxk8s practice 2023.pptx
k8s practice 2023.pptx
 
HyperLedger Fabric V2.5.pdf
HyperLedger Fabric V2.5.pdfHyperLedger Fabric V2.5.pdf
HyperLedger Fabric V2.5.pdf
 
Ngrok을 이용한 Nginx Https 적용하기.pptx
Ngrok을 이용한 Nginx Https 적용하기.pptxNgrok을 이용한 Nginx Https 적용하기.pptx
Ngrok을 이용한 Nginx Https 적용하기.pptx
 
Nginx Https 적용하기.pptx
Nginx Https 적용하기.pptxNginx Https 적용하기.pptx
Nginx Https 적용하기.pptx
 
Kafka JDBC Connect Guide(Postgres Sink).pptx
Kafka JDBC Connect Guide(Postgres Sink).pptxKafka JDBC Connect Guide(Postgres Sink).pptx
Kafka JDBC Connect Guide(Postgres Sink).pptx
 
Nginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptxNginx Reverse Proxy with Kafka.pptx
Nginx Reverse Proxy with Kafka.pptx
 
Kafka Rest.pptx
Kafka Rest.pptxKafka Rest.pptx
Kafka Rest.pptx
 
Kafka monitoring using Prometheus and Grafana
Kafka monitoring using Prometheus and GrafanaKafka monitoring using Prometheus and Grafana
Kafka monitoring using Prometheus and Grafana
 
주가 정보 다루기.pdf
주가 정보 다루기.pdf주가 정보 다루기.pdf
주가 정보 다루기.pdf
 
KAFKA 3.1.0.pdf
KAFKA 3.1.0.pdfKAFKA 3.1.0.pdf
KAFKA 3.1.0.pdf
 
App development with quasar (pdf)
App development with quasar (pdf)App development with quasar (pdf)
App development with quasar (pdf)
 
Hyperledger Fabric practice (v2.0)
Hyperledger Fabric practice (v2.0) Hyperledger Fabric practice (v2.0)
Hyperledger Fabric practice (v2.0)
 
Hyperledger fabric practice(pdf)
Hyperledger fabric practice(pdf)Hyperledger fabric practice(pdf)
Hyperledger fabric practice(pdf)
 
Kafka slideshare
Kafka   slideshareKafka   slideshare
Kafka slideshare
 
BlockChain implementation by python
BlockChain implementation by pythonBlockChain implementation by python
BlockChain implementation by python
 

Dernier

Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 

Hyperledger composer