[EOS Dev #001] 내 컴퓨터에 EOS Blockchain Network 를 구동시켜 보자

in #kr7 years ago (edited)

EOS는 Steem 외에 관심을 가지고 있는 또 하나의 BlockChain Dapp Platform 입니다. EOS 개발자들은 Platform 보다는 EcoSystem 이라는 단어를 더 선호하는 듯 합니다만, 어쨋거나 EOS에 관해서도 조금씩 공부하는 내용을 포스팅 해보려고 합니다.

오늘 저의 목표는

EOS Docker Image 를 Build 해서 Local 개발환경에 EOS BlockChain을 구동시키는 것 입니다. 과정은 이렇습니다.

  1. Docker 를 설치하고 ( https://docs.docker.com/install )

  2. Git 에서 EOS Code 를 check out 받은 후에
    > git clone https://github.com/EOSIO/eos.git --recursive

  3. EOS Docker Image 를 Build 합니다.

    >  cd eos/Docker
    >  docker build . -t eosio/eos
    
  4. Docker Image Build 과정에서 몇 가지 이슈가 발생하는데… 아래 세개의 파일을 수정합니다.
    스크린샷 2018-02-13 오전 6.53.41.png

    config.ini 파일의 genesis-json 경로를 수정합니다. (eos > eosio)
    스크린샷 2018-02-13 오전 6.52.36.png

    Dockerfile 파일에서도 경로들을 수정합니다.
    스크린샷 2018-02-13 오전 6.53.23.png

    docker-compose.yml 수정
    스크린샷 2018-02-13 오전 6.52.59.png

    대부분의 이슈는 https://njir.github.io/posts/eos-on-docker 포스팅을 참고해서 해결했습니다. 위 포스팅 내용외에 추가로 수정한 부분은 docker-compose.yml 파일의 walletd 실행 파일명 뿐이네요. docker image 내에 eosio-walletd 라는 파일은 존재하지 않아 eosiowd 라는 파일명으로 변경했습니다.

  5. Docker Image를 run 하면...

    docker run --name eosiod -p 8888:8888 -p 9876:9876 -t eosio/eos start_eosiod.sh --genesis-json /opt/eosio/bin/data-
    dir/genesis.json
    

    스크린샷 2018-02-10 오후 6.54.43.png

    EOS Image 를 실행시키는데 성공했네요 +______+!!

  6. 이제 마지막으로 eosid 와 walletd 를 백그라운드로 실행시키고
    > docker-compose up -d

  7. BlockChain 정보를 실제로 확인해 봅니다.
    > curl http://127.0.0.1:8888/v1/chain/get_info
    스크린샷 2018-02-13 오전 9.36.55.png

  8. RPC Interface 에 대한 명세는 이 곳에서 확인할 수 있습니다..... 만 아직 항목별 상세한 내용은 파악하지 못했습니다. 천천히 살펴봐야 겠네요.
    Tutorial : https://github.com/EOSIO/eos/wiki/Tutorials
    RPC Interface : https://eosio.github.io/eos/group__eosiorpc.html
    Travis CI : https://travis-ci.org/EOSIO/eosjs-json


EOS 정보 : EOS에 관한 전반적인 내용은 @krexchange 님의 포스트를 참고하시면 좋을 듯 해요. 본문은 EOS 펀딩에 관한 글이지만 EOS에 관한 좋은 글들이 잘 갈무리 되어 있습니다.


KakaoTalk_Photo_2018-02-13-22-23-05_61.jpeg

KakaoTalk_Photo_2018-02-13-22-23-01_94.jpeg

EOS 개발자 밋업에도 다녀왔습니다만... 이미 잘 정리해주신 동료? 스티미언 분이 계셔서 후기는 링크로 대신합니다. ㅎㅎㅎ
@youngbin 님의 후기 : https://steemit.com/kr/@youngbin/1-eos-io

Sort:  

스스로 홍보하는 프로젝트에서 나왔습니다.
오늘도 좋은글 잘 읽었습니다.
오늘도 여러분들의 꾸준한 포스팅을 응원합니다.

이오스가 요즘 굉장히 핫하군요
맞팔하고 소통하면서 지내고싶습니다^^

감사합니다. 자주 뵈요 ^^

전에 로컬넷은 설치해봣엇는데 테스트넷인가요?

로컬이에요 ~ 저도 테스트넷에는 아직 안붙여봤네요. EOSJS, EOSJS-API, EOSJS-JSON 순으로 살펴보려고 합니다.

로컬넷을 붙여보곤... 이젠 머하지? 하다가 껏답니다 ㅋㅋㅋ

ㅋㅋㅋㅋ 함께 튜토리얼 ㄱㄱ 하시죠 ㅋ

대단한정보입니다.
좋은글 감사합니다. . 상디이미지.gif

감사합니다. 프로필이 인상적이군요 ㅋ

저도 한번 시도해 보고 싶네요


팔로 ~ 꾸욱~💕

시간은 조금 걸리지만 먼저 삽질해주신 선배분들 덕분에 어렵지는 않네요 ~ 도전해보세요 ㄱㄱ

잘봤습니다. 저도 한번 돌려는 보고 싶은데... 인텔리J 쓰시는거 부럽습니다 ㅠㅠ

공장에서 일시키려고 사줬다는 ㅎㅎㅎ

저도 블록체인 기술에 대한 개념이 어느정도 정리가되면 꼭 도전해보고싶네요 좋은 정보 감사합니다~!

도전해보세요 !! 응원합니다 ㅋ

@coffeex 님 덕분에 eos image 를 실행시키는데까진 성공했습니다.

그런데, docker-compose 를 실행시키니 오류가 발생하네요.

이유가 무엇일까요?

Recreating docker_eosiod_1 ... error

ERROR: for docker_eosiod_1 Cannot start service eosiod: driver failed programming external connectivity on endpoint docker_eosiod_1 (842e4f2dd9395d7da09e0bdac57863b3a7b25afdb9181b88b5888969a920d95f): Bind for 0.0.0.0:9876 failed: port is already allocated

ERROR: for eosiod Cannot start service eosiod: driver failed programming external connectivity on endpoint docker_eosiod_1 (842e4f2dd9395d7da09e0bdac57863b3a7b25afdb9181b88b5888969a920d95f): Bind for 0.0.0.0:9876 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.

아.. 도커를 리스타트 하니 정상적으로 되는군요. 해결했습니다. 감사드립니다. :)

금방 해결 하셨군요 ㅎㅎ
이전에 실행시켰던 도커 이미지가 동일한 port 를 이미 사용하고 있어서 발생한 문제인 듯 합니다.
조금 번거롭지만 ~ docker 이미지를 모두 제거하고 재 실행하는게 좋더라구요.

이미 아실 수도 있지만 ~ 모든 컨테이너 Stop & Remove 명령어 입니다.

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

This post received a 53% upvote from @krwhale thanks to @coffeex! For more information, click here!
이 글은 @coffeex님의 소중한 스팀/스팀달러를 지원 받아 53% 보팅 후 작성한 글입니다. 이 글에 대한 자세한 정보를 원하시면, click here!

Coin Marketplace

STEEM 0.19
TRX 0.15
JST 0.029
BTC 63188.04
ETH 2570.49
USDT 1.00
SBD 2.79