만족은 하되 안주하지는 말자

기록해야 기억한다

프로그래밍/ETC

[hyperledger-fabric] hyperledger fabric 1.4 설치 및 실행 가이드

D36choi 2020. 9. 20. 23:37
728x90

hyperledger - fabric 을 해보고자 하는 사람들에게 도움이 될 수 있길 바라는 맘에 쓴,

하이퍼레저 패브릭 설치 v1.4 가이드 입니다.

 

AWS EC2 ubuntu 18.04 버전을 기준으로 하고 있습니다.

시작

sudo apt update -y
sudo apt upgrade -y
git --version
# 없으면 설치
git clone -b release-1.4 --single-branch https://github.com/hyperledger/fabric-samples.git

위 명령어는 fabric-sample 의 여러 브랜치 중, 버전1.4 브랜치만 가져오는 명령어 입니다.

따라서 다른 버전을 하고싶다면 https 주소 앞에 부분은 지우면 됩니다.

git 설치하는 법은 다른 곳을 참고 바랍니다.

 

docker, docker-compose,curl 를 설치합니다

sudo apt install curl
sudo apt-get -y install docker-compose
sudo usermod -aG docker $USER
docker -v
docker-compose -v

Golang 을 설치하고 환경변수 설정을 합니다

https://golang.org/dl/go1.12.linux-amd64.tar.gz
# 공식문서는 1.12.X 하라는데 책이랑 블로그는 1.11.x 하란다. 일단 12 도전
sudo tar -xvf go1.12.linux-amd64.tar.gz
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin

 

npm, Node js 를 설치합니다.

패브릭1.4는 Node.js 8.9.4~ 를 지원합니다. 여기서는 8.x 버전 중 최신 버전을 설치하게 됩니다.

If you will be developing applications for Hyperledger Fabric leveraging the Hyperledger Fabric SDK for Node.js, version 8 is supported from 8.9.4 and higher. Node.js version 10 is supported from 10.15.3 and higher.
curl -sL https://deb.nodesource.com/setup_8.x | sudo bash -
sudo apt install nodejs
node -v
npm -v

버전을 확인하고 설치가 잘되었다면 다음으로 넘어갑니다.

 

fabric binary 파일들과 Docker Image 들을 설치합니다.

 

curl -sSL http://bit.ly/2ysbOFE | bash -s 1.4.1 1.4.8
# 1.4.1 = fabric version, 1.4.8 = fabric CA version 을 의미한다

cd fabric-samples/bin/

# 파일들이 잘 생성되었나 확인합니다.

이렇게 생성되었다면 다음단계로

ERROR!

이런 오류가 뜬다면 다음과 같이 합니다.

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/images/json: dial unix /var/run/docker.sock: connect: permission denied sudo chmod 666 /var/run/docker.sock
  • /var/run/docker.sock 파일의 권한을 666으로 변경하여 다른 사용자도 접근 가능하게 변경
sudo chmod 666 /var/run/docker.sock

chmod는 파일권한(rwx)을 변경시켜주는 키워드고 이 명령어는 docker.sock 파일을, root권한이 아닌 사용자에게도 write,execute 권한을 부여합니다.

 

이제 테스트를 해보죠

cd /fabric-samples/first-network

sudo ./byfn.sh up

정상적으로 종료됨을 확인합시다

다끝나면 문제가 없도록 테스트를 위해 실행한 모든 docker container 를 지우고 꺼줘야합니다.

sudo ./byfn.sh down