Open1
Polygonへコントラクトのデプロイ
Polygonへコントラクトのデプロイ
リソース
- コレクタブルNFTを作ってみる①事前にオフチェーンで画像を用意するパターン | ぽんた / Kenta Suhara
- シンプルなERC721のコントラクトをデプロイする手順 - Qiita
- Hardhat tutorialメモ
- NFT Minter Tutorial: How to Create a Full Stack DApp
- Polygon Basic Integration
やること
- Polygonへコントラクトをデプロイする
メモ
- コードはコレクタブルNFTを作ってみる①事前にオフチェーンで画像を用意するパターン | ぽんた / Kenta Suharaを参考にしたが結構色々な部分が端折られているので最初はつまづく気がする。
- 基本の流れ
- maticを取得する
- walletの設定
- faucetの取得
- mainnet
- mumbai(testnet)
- IPFSに画像をアップロード
- Pinata | Effortless IPFS File Management
- IPFSとしてはArweaveもあるが、これはBlockchainと同じような仕組みなのでホスティングにgas feeがかかる
- 画像情報をそれぞれERC721に合わせたJSONにする
- IPFSにフォルダをアップロード
- それぞれ生成したJSONが入ったフォルダごとまとめてアップロードする
- baseTokenURIは一つなので1つのコントラクトに複数画像を紐付けたい場合はフォルダのIPFS URL(もしくはAPIのエンドポイントなど)を指定しないといけない(認識間違ってる可能性あり)
- contractを書く
- hardhatでデプロイ
-
insufficient funds for intrinsic transaction cost
と言われて進まない- 必要なprice計算がわからん
- hardhatのdocを読まないとダメそう
- そもそものコントラクトで使われてるOpenZeppelinの使い方も勉強しないとダメそう...
-
- maticを取得する
- ここまでやったがデプロイがうまくいかないので原因を探す
-
Polygon Basic IntegrationによるとPolygonのネットワークのスマートコントラクトはOpenSeaからガス代をかけずにいじれるような設定をしないといけない
-
OpenZeppelinの
ERC721
moduleを継承していれば問題なさそう
-
OpenZeppelinの
- 単純にtransaction feeが足りないだけでは?
- mumbaiのfaucetでは0.1MATICを貰えた。polygonscanをみたところtransaction feeは今0.006とかだった。mainnetで自分の持っているmaticは0.003だったのでこれが原因っぽい...
- mumbaiへのtransaction feeは0.025738752 MATICだった。
-
Polygon Basic IntegrationによるとPolygonのネットワークのスマートコントラクトはOpenSeaからガス代をかけずにいじれるような設定をしないといけない
- mumbaiにデプロイ後OpenSea, the largest NFT marketplaceへアクセス。metamaskでmumbaiに接続後ログイン。
-
Submit contract addressへアクセス。デプロイしたコントラクトを登録。
We couldn't find this contract. Please ensure that this is a valid ERC721 or ERC1155 contract deployed on Mumbai and that you have already minted items on the contract
というエラーが出るが、これは既知の問題らしい。24時間くらい待つと登録できるようになるっぽい。
-
Submit contract addressへアクセス。デプロイしたコントラクトを登録。