일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 체인의정석
- ethers websocket
- erc4337 contract
- git rebase
- erc4337
- 스마트 컨트렉트 함수이름 중복
- 오블완
- SBT표준
- 컨트렉트 동일한 함수이름 호출
- 스마트컨트렉트 함수이름 중복 호출
- ethers v6
- chainlink 설명
- Vue.js
- 러스트 기초 학습
- ethers type
- vue기초
- multicall
- ethers typescript
- 컨트렉트 배포 자동화
- 계정추상화
- ethers
- 러스트기초
- 스마트컨트렉트테스트
- Vue
- ambiguous function description
- rust 기초
- 스마트컨트렉트 예약어 함수이름 중복
- 머신러닝기초
- 러스트 기초
- 티스토리챌린지
- Today
- Total
목록분류 전체보기 (496)
체인의정석
docker-compose up -d 해당 명령어를 실행했을 때 permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: 위와 같은 에러가 나온다. 이 경우 sudo usermod -a -G docker $USER 해당 명령어를 수행시켜 도커에 유저를 등록시켜야 하며 ($USER 는 현재 접속중인 유저 정보이므로 그대로 복붙해도 된다.) 이후 exit을 눌러서 나갔다가 다시 들어오게 되면 해당 에러가 사라져 있으며 id 명령ㅇ어를 쳤을때 docker가 추가된 것을 확인할 수 있다. 참고 https://technote.kr/369
1. 먼저 원격 접속 한 곳의 운영체제 정보를 알고 싶을때는 hostnamectl 명령어를 사용하면 된다. 나는 리눅스로 확인되었다. 2. nvm 설치 (둘 중 하나 선택해서 실행) curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash .bash_profile에 반영 source .bash_profile 3. nvm으로 로컬에서 진행한 버전 체크 후 같은 node.js 설치 (npm은 자동으로 설치됨) nvm install v18.15.0
1. 먼저 git을 설치해 주어야 한다. git 설치하기 https://git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-Git-%EC%84%A4%EC%B9%98 Git - Git 설치 이 책은 Git 2.0.0 버전을 기준으로 썼다. 대부분의 명령어는 그 이전 버전에서도 잘 동작하지만, 몇 가지 기능은 아예 없거나 미묘하게 다를 수 있다. Git의 하위 호환성은 정말 훌륭하기 때문에 2.0 git-scm.com 2. SSH 키 등록 만약 Permission denied (publickey) 이런오류가 나왔다면 SSH 키 등록을 해야한다. https://confluence.atlassian.com/bbkb/permission-denied-publi..
사용한 상황 DB 정합성 체크를 받아야하는 상황 + 보안 문제로 DB에 접근이 어려운 상황에 따라서 필요한 부분만 DB에서 뽑아내서 받아오는 관리자 API를 만들어야 하는 상황이다. 여러 서버에 접근해서 DB값을 뽑아와야 하는 상황. 또한 테이블과 데이터베이스가 꾸준히 변동되는 구조이다. 그러나 sequalize를 사용중이므로 자동적으로 db에 대한 정보가 경로상의 폴더와 파일명으로 업데이트 되기 때문에 따라서 먼저 각 DB별로 db정보를 읽어와 파일을 생성해주는 api, path를 가져오는 함수를 만들어 두었으며, 이를 통해 특정 블록번호 기준으로 데이터를 조회하는 기능과 내부적으로 파일을 생성한 후 해당 파일 하나 또는 전체 데이터에 대해서 파일로 가져오는 부분을 구현하였다. 이러한 기능들을 이용하면..
web3의 getPastEvents를 ethers에서 하려면 "query filter"를 사용하면 된다고 한다. 이걸 못찾아서 노가다를 했었는데 앞으로 이걸써야지 https://docs.ethers.org/v5/api/contract/contract/#Contract-queryFilter Contract Documentation for ethers, a complete, tiny and simple Ethereum library. docs.ethers.org // Get the address of the Signer myAddress = await signer.getAddress() // '0x8ba1f109551bD432803012645Ac136ddd64DBA72' // Filter for all to..
데이터의 양이 많아지게 되면 블록체인 데이터를 데이터베이스에 저장하게 된다. 이번에는 해당 데이터베이스의 누락 여부를 점검하고 데이터베이스에 대한 관리 권한을 이전하고 나서도 검토를 계속 할 수 있는 프로그램을 제작중이다. 처음에는 간단하게 점검만 하려다 보니 자동화가 필요해져서 자동화를 했는데 팀회의 때 보니 이를 자동화 시키는 프로그램이 필요하다고 했다. 나는 중간에 들어왔다 보니 잘 몰랐지만 아직까지 db적재 데이터의 검토 모듈이 없었다고 하여 이번에 설계를 하게 되었다. 어차피 혼자 하는 작업이라 설계 과정 없이 진행하려 했지만 다음의 2가지 이유로 설계서를 작성하였다. 1. 추후 이관 시 설명을 해야 함 2. 팀원 내부의 사람들에게도 공유를 해야 함 3. 상당히 복잡한 프로그램이 나올 것으로 예..
Tree 설치 방법 코드 작성 후 산출물 작성을 위해 설계한 경로를 tree형태로 뽑으려 했다. brew install tree 근데 아래 오류가 발생했다. /usr/local/Homebrew/Library/Homebrew/global.rb:15:in `require': cannot load such file -- active_support/core_ext/object/blank (LoadError) 이 경우 해결방안을 찾아보니 brew update-reset 이걸 해주라고 한다. 다시 설치하니 설치가 잘 된다. 이제 원하는 경로에 들어가서 tree 명령어를 치면 경로의 폴더와 파일들이 다 나온다. tree 해당 프린트 된 값을 기준으로 각 경로에 대한 설명을 써서 산출물을 만들었다. Tree 기능 설명..
이번에는 블록체인 데이터가 누락없이 저장되고 dev의 환경을 로컬에 다시 구현했을때 제대로 구현이 되고 누락된 사항이 없는지 체크하는 프로그램을 설계하고 구현하였다. 일단 각 데이터를 테이블별로 가져와서 json파일로 경로 생성 후 만들고 두 배열을 비교하는 모듈을 작성해서 두 배열을 비교했다. 이 경우 fs모듈을 통해 자유자재로 파일을 만들고 경로를 만드는 코딩이 필요했다. 이때 사용한 문법들을 아래에 정리해 보았다. fs 모듈 가져오기 var fs = require('fs'); makeFolder기능 const makeFolder = (dir) => { if(!fs.existsSync(dir)){ console.log("make folder in : ", dir) fs.mkdirSync(dir); }..