efforthye / etherscat_block_explorer_react

personal geth project / etherscan : https://etherscan.io/
2 stars 0 forks source link

Block-Explorer

image

프로젝트 실행방법

  1. Block-Explorer/web 폴더에 .env 파일 생성 후 아래의 내용 입력 및 저장
    BUILD_PATH="./server/build"
    COOKIE_SECRET="happyworld"
  2. Block-Explorer/web/server/config/config.json 파일에 맞게 mysql 스키마 생성
  3. Block-Explorer/web 경로까지 터미널 접근 후 yarn install
  4. Block-Explorer/web/server 경로까지 터미널 접근 후 npm install
  5. Ubuntu에서 geth 서버를 열어 준다.(아래 geth 명령어 참고..)
  6. Block-Explorer/web/server/index.js 파일의 force를 true로 바꿔 저장하고, 다시 false로 바꾸어 저장한다.
  7. Block-Explorer/web 경로까지 터미널 접근 후 yarn start 명령어 입력

프로젝트 실행방법(빌드 확인)

  1. Block-Explorer/web 폴더에 .env 파일 생성 후 아래의 내용 입력 및 저장
    BUILD_PATH="./server/build"
    COOKIE_SECRET="happyworld" 
  2. Block-Explorer/web/server/config/config.json 파일에 맞게 mysql 스키마 생성
  3. Block-Explorer/web 경로까지 터미널 접근 후 yarn build
  4. Ubuntu에서 geth 서버를 열어 준다.
    • node.js 버전 : 16
      geth --datadir ~/myGeth --http --http.port 8081 --http.corsdomain "*" --http.api "admin,miner,txpool,web3,personal,eth,net" --allow-insecure-unlock --syncmode full --networkid 50 --ws --ws.port 8082 --ws.origins "*“ console
    • node.js 버전 : 16 실행되지 않을 경우
      geth --datadir ~/myGeth --http --http.port 8081 --http.corsdomain "*" --http.api "admin,miner,txpool,web3,personal,eth,net" --allow-insecure-unlock --syncmode full --networkid 50 --ws --ws.port 8082 --ws.origins "*“ --maxpeers 0 console
    • node.js 버전 : 18
      geth --datadir ~/myGeth --http --http.addr "0.0.0.0" --http.port 8081 --http.corsdomain "*" --http.api "admin,miner,txpool,web3,personal,eth,net" --allow-insecure-unlock --syncmode full --networkid 50 --ws --ws.port 8082 --ws.origins --ws.addr "0.0.0.0" --maxpeers 0 "*" console
    • node.js 버전 : 18 실행되지 않을 경우
      geth --datadir ~/myGeth --http --http.addr "0.0.0.0" --http.port 8081 --http.corsdomain "*" --http.api "admin,miner,txpool,web3,personal,eth,net" --allow-insecure-unlock --syncmode full --networkid 50 --ws --ws.port 8082 --ws.origins --ws.addr "0.0.0.0" "*" console
  5. Block-Explorer/web/server/index.js 파일의 force를 true로 바꿔 저장하고, 다시 false로 바꾸어 저장한다.
  6. Block-Explorer/web 경로까지 터미널 접근 후 yarn start:server 으로 서버 실행 후 localhost:8080 에 접속하여 프로젝트에 접근

프로젝트 실행시 열리게 되는 포트

주요 기능

대표적인 이슈 사항

  1. react/node.js/geth 연결 도중 발생한 cors error
  2. axios 등의 통신 도중 발생한 response type error
  3. transaction이 mining 후에도 txpool의 pending이 아닌 queued에 저장되는 이슈
  4. metamask 연결 후 현재 account 설정이 정상적으로 되지않는 이슈
  5. associate된 database model이 성공적으로 가져와지지 않는 이슈(EagerLoadingError)
    • 깃 레포지토리의 Issues 카테고리에 해결 등 상세한 내용이 적혀져 있습니다.

프로젝트 도중 느낀점