Chaincode 이미지 생성 오류 만약 체인코드 이미지를 생성하면서 peer들에게 배포하는 과정에서 chaincode가 같은 폴더에 두개가 있다면 오류가 발생한다. 이런 경우에는 백업파일을 만들 때 .go라는 파일을 만들지 말고 다른 이름의 파일명으로 실행을 할경우 해결할 수 있다.
Hyperledger fabric 이미지 다운로드 네트워크 구성하기 원격 프로그램(SSH)을 사용하여 vscode에 연결을 할 경우 .profile파일이 등록이 되지 않기 때문에 go, peer, cryptoxgen 같은 fabric binary파일들이 등록이 되지 않는다. 그래서 .bashrc파일에서 환경변수 등록을 해야된다. # ~/.bashrc: executed by bash(1) for non-login shells. # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # for examples # If not running interactively, don't do anything case $- in *i*) ;;..
두개의 가장 큰 차이점 1.4버전에서는 shim과 peer 라이브러리를 가져와서 사용 import( "github.com/hyperledger/fabric/core/chaincode/shim" sc "github.com/hyperledger/fabric/protos/peer" ) 2.2버전에서는 contractapi 라이브러리를 가져와서 사용 1.4버전에서는 chaincode코드 파일내에서 적집 access해서 사용을 하였지만 2.2버전으로 바뀌면서 contractapi안에 shim, peer를 따로 별도로 사용을 하게 되었음. import( "github.com/hyperledger/fabric-contract-api-go/contractapi" ) 왜 이렇게 바꾸었을까? chaincode 작성 시 I..
스크립트란? 인터프리트 방식으로 동작하는 컴파일 되지 않은 프로그램으로 텍스 형식으로 저장되며 한줄씩 순차적으로 읽어서 수행 .sh 확장자를 가짐 간단하게 말해서 터미널 창에 입력하고 싶은 명령어를 한번에 정리하여 작성하여 쉘 스크립트를 실행시킴 쉘 스크립트의 장점 반복적인 명령어를 작성할 때 유용 자동화가 가능 많은 명령어를 한번에 쳐야 될때 쉘 스크립트에 정리를 하고 실행 시킬 수 있음 기존의 명령어를 사용자만의 명령어로 보안 명령어 echo 화면에 출력을 시켜줌 env 전체 환경변수 설정을 확인 할 수 있음. export $환경변수명=변수값 chmod 775 파일명 관리자에 대해서 권한을 부여할 수 있게 해주는 명령어 인자 변수 변수 string 데이터 타입만 존재 변수 선언문 없이 바로 사용 가능..
VirtualBox 다운로드 아래 링크로 들어가서 virtual box 다운로드 https://www.virtualbox.org/ Oracle VM VirtualBox Welcome to VirtualBox.org! News Flash New July 19th, 2022VirtualBox 6.1.36 released! Oracle today released a 6.1 maintenance release which improves stability and fixes regressions. See the Changelog for details. New April 19th, 2022VirtualBox 6.1.34 releas www.virtualbox.org Virtualbox 이미지 가져오기 Virtualb..
Shim interface란? - 하이저 패브릭 1.4에 Chaincode(Smart contract)를 실행시키기 위한 interface - Ledger(원장)에 접근하여 데이터를 쓰거나 읽어오게 해주는 Interface - Transcation이 왔을 경우 함수이름과 파라미터들을 Parsing해주는 역할도 진행한다. ex) Getstate(), Putstate() - 외부 라이브러리를 다운로드하면 Chaincode에 대한을 컴파일을 진행할 수 있다. 다운로드 하는법 터미널에 아래의 코드를 입력 . ~/.profile go mod init [module로 사용할 이름] - go get github.com/hyperledger/fabric/core/chaincode/shim@v1.4 하이저패브릭 최신버전..
Golang 사이트 접속 - https://go.dev/ 사이트를 접속 후 운영체제에 맞는 golang 다운로드 Vscode들어가서 extension에서 go 다운로드 앞으로 go코드를 작성할 파일 생성 .go 파일 생성 좌측에 나오는 go extension 모두 다운받기 클릭 기본적으로 go코드를 돌릴 수 있는 go 모듈 다운로드 터미널 창에서 go mod init test 커맨드 입력 Workspace에서 생성된 파일 확인 모듈이 잘 설치가 되었는지 확인 개발 환경 체크하기 아래와 같은 작성 후 테스트 해보기 package main import ( "fmt" ) func main() { fmt.Println("Hello My class") } chaincode를 작성하기 위한 go언어 환경세팅 완료 ..