이더리움 Dapp 개발 - 1. Geth(Go Ethereum) 클라이언트 설치

    오늘부터는 이더리움(Ethereum)을 이용한 Dapp(탈중앙화 어플리케이션, Decentralized Application) 혹은 토큰(Token) 개발을 진행하겠습니다(Dapp과 토큰은 사실상 동의어입니다). Dapp을 개발하기에 앞서 우선 이더리움 클라이언트를 설치해야 합니다. 이더리움은 서버라는 개념이 없이 모든 노드가 서버와 클라이언트(자웅동체)을 모두 수행하기 때문에 "서버는 왜 설치 안하나요?"라는 의문점을 가질 필요가 없습니다.


    우선 이더리움 클라이언트는 다양한 버전들이 존재합니다만, 저는 Go Ethereum을 기반으로 강의를 진행할 예정입니다. 일단 Go Ethereum은 가장 활발히 작업이 진행되는 클라이언트이며, Go는 구글(Google)에서 만든 프로그램 언어입니다. Go Ethereum은 오픈소스이고, 누구나 소스코드를 볼 수 있으며 개발에 참여가 가능하기 때문에 프로그램 소스에 관심이 있으신 분들은 한번 깃허브에 들어가서 보는 것을 추천합니다.


    https://github.com/ethereum/go-ethereum



    다양한 언어의 이더리움 클라이언트




    Go Ethereum은 다양한 언어의 버전들이 있습니다. 


    Go 언어의 go-ethereum

    Rust 언어의 Parity

    C++ 언어의 cpp-ethereum

    Python 언어의 pyethapp

    Javascript 언어의 ethereumjs-lib

    Java 언어의 Ethereum(J)

    Ruby 언어의 ruby-ethereum

    Haskell 언어의 ethereumH


    이렇게 다양한 언어의 버전들이 구성이 되어 있으며, 주력 언어의 이더리움 클라이언트가 있다면, 시간을 내어 소스를 보는 것을 추천 드립니다. 이더리움 재단에서는 메인으로 개발하는 클라이언트가 go-ethereum과 Parity이며, 다른 클라이언트보다 새로운 버전의 릴리즈 주기가 빠르기 때문에 이 2가지를 추천합니다.


    2016년 9월 기준, http://www.ethdocs.org/en/latest/ethereum-clients/choosing-a-client.html



    Geth(Go Ethereum) 설치 Step by Step


    이더리움 클라이언트는 개발자 버전과 안정화 버전이 있습니다개발자 버전은 실험적인 버전으로 가장 최근의 기술이 녹아 들어 있지만, 안정화가 되어있지 않아서 불안한 버전이고안정화 버전은 필수 기능들이 정상적으로 작동되며, 어느 정도의 안정적인 성능을 보장하는 버전이라 생각하시면 됩니다.


    730일자 기준으로 Go-Ethereum1.8.12버전이 안정화이고, 1.8.13이 개발자 버전입니다. 저는 안정화 버전인 1.8.12버전을 선택하고 진행하도록 하겠습니다. 설치를 하실 때, Installer와 Archive 형태가 존재하는데 Installer 버전을 추천 드립니다. 안그러면, 별도의 설정을 해야 하니, Installer로 설치하겠습니다.



    다운로드된, geth 파일을 실행하게 되면, 위와 같은 install 화면들이 나오게 됩니다. 별거 없으니 다음, 다음, 다음만 누르시면 됩니다. 중간에 Geth와 Development Tools 설치하는 란이 나오는데, 저는 둘다 체크하고 Next를 하였습니다. 최종적으로 Install을 선택하게 되면 Geth 설치가 마무리 되었습니다.



    진행 I Agree -> Geth, Development Tools 체크 -> Next -> Install



    설치 확인



    프로그램 설치가 완료되었다면 아래와 같은 확인 작업을 수행합니다.


    1. 윈도우키를 눌러, 메뉴를 띄웁니다.
    2. 프로그램 파일 검색창에 "cmd"를 입력합니다.
    3. cmd 창이 띄워지면, "geth"를 입력합니다.
    4. 캡쳐한 화면같은 정보들이 출력이 되면, 정상적으로 설치가 된 것이니 "ctrl + c" 혹은 창을 직접 닫아서 종료합니다.


    이상, Geth를 설치하는 것을 포스팅 해보았습니다. 참고로, CMD창(커맨드창)에서 geth를 실행할 때 나오는 내용들은 이더리움 블록체인에 연결하는 과정입니다. 다음에는 Dapp 개발을 위해서, 사설을 설정하는 법을 포스팅 하도록 하겠습니다.

    댓글

    Designed by JB FACTORY