Foundry를 사용해서 스마트 컨트랙트 디플로이 하는법

파운드리
Cover Image for Foundry를 사용해서 스마트 컨트랙트 디플로이 하는법

스마트 컨트랙트를 빌드하고 디플로이 하는데 truffle이나 hardhat을 많이 사용했었는데 요즘에는 foundry를 많이 사용하도록 올라오는 것 같다. 그래서 지금까지 한 번도 스마트 컨트랙트를 블록체인에 안 올려본 사람도 foundry를 사용해서 해볼 수 있도록 쉽게 설명한다.

맥용으로 foundry를 설치하고 스마트 컨트랙트를 올리게 하며 윈도 버전은 이와 비슷하게 진행하면 될 것 같다.

foundry설치
curl -L https://foundry.paradigm.xyz | bash

이렇게 설치하면

foundryup를 실행할 수 있는데 만약 zsh: command not found: foundryup라고 나온다면,

위에 나오는 대로

`source /Users/hamin/.zshenv`(나의 경우) 이런 식으로 돌린 후 foundryup를 실행할 수 있다.

foundryup

foundryup을 실행한 후 foundry를 설치하게 되고,
forge --version에 버전이 나오게 된다.

forge version


이게 forge가 설치되었으니 새로운 프로젝트를 만들어보자.

forge init cointrainer


forge init 다음 아무 프로젝트 이름이나 넣고 실행시킨다.

forge create cointrainer


폴더로 만들어진 이 프로젝트를 vscode로 열어보면,

forge 설치

이런식으로 만들어진것을 확인할 수 있다. 이미 만들어져있는 Counter.sol을 폴리곤 뭄바이에 올려보자.

.env 파일을 폴더에 만들고

forge env

RPC_URL="https://polygon-mumbai-pokt.nodies.app"

PRIVATE_KEY=""

이렇게 두 개를 넣으면 된다. 프라이빗 키는 메타마스크에서 가져오면 되고

뭄바이의 토큰이 없다면,

https://mumbaifaucet.com/

여기서 받을 수 있다.

matic mumbai faucet

.env 파일에 RPC_URL과 PRIVATE_KEY넣고 vscode의 터미널을 킨다.

source .env  
echo $RPC_URL


그러면 아까 env에 넣은 RPC_URL 값을 리턴 받을 수 있다.

https://polygon-mumbai-pokt.nodies.app


이제 마지막으로 Counter.sol을 디플로이 하는 것만 남았다.

forge create --rpc-url $RPC_URL --private-key $PRIVATE_KEY src/Counter.sol:Counter


실제 예:

forge create


이제 디플로이가 되었다.


뭄바이스캔에 들어가 위의 Deployed to주소를 넣으면 디플로이가 된 것을 볼 수 있다.

뭄바이스캔 - https://mumbai.polygonscan.com/

polygonscan-mumbai

이미지 출처: OpenAI의 DALL·E를 통해 생성됨

More Articles

Cover Image for 아이겐레이어가 만들려는 세상
아이겐레이어

아이겐레이어가 만들려는 세상

아이겐레이어는 Web3의 AWS가 되어 검증 가능하고 탈중앙화된 클라우드 서비스를 제공합니다. Web3 앱은 이 생태계에서 롤업을 통해 안전하게 운영됩니다.

Cover Image for 블라스트가 보여주는 L2의 의미
블라스트

블라스트가 보여주는 L2의 의미

가스 비용을 줄이는 데 중점을 둔 다른 L2와 달리, 블라스트는 이더리움과 스테이블코인에 대한 자동 리벨런싱을 도입하여 최대 4%의 이자를 제공하며, 덜 중앙 집중화된 거버넌스로의 잠재적 전환을 보여줍니다.