本指南详细介绍了如何使用Candy Machine在Solana上铸造NFT,涵盖了从项目设置到最终铸造的完整流程。
本指南将通过一系列技术步骤,深入介绍如何使用 Candy Machine 在 Solana 上铸造 NFT。如果你想更快地完成这项任务,并将繁重的工作交给我们,我们推荐使用 Crossmint NFT Mint API [mainnet] 插件。通过使用 Crossmint NFT Mint API [mainnet],你可以避免创建 Candy Machine。使用 NFT Mint API 来创建集合,减少前期成本,并轻松铸造 NFT!
尝试 Crossmint NFT Mint API [mainnet]
已弃用
本指南基于 Candy Machine 的 V1 版本。V1 已被弃用。你可以在这里查看 V2 的最新指南。
你好,读者!我们收到了很多请求,希望我们提供另一个 Solana NFT 指南,展示如何在 Solana 上铸造 1-of-1 代币或 NFT。在之前的指南中,我们并没有深入探讨到最核心的部分,即实际将图片/元数据链接到代币。为了实现这一点,我们将使用一个名为 Candy Machine 的程序。Candy Machine 是一个工具,允许你在互联网的某个角落设置自己的 Solana NFT 商店。在本指南中,我们将逐步介绍如何设置这个一站式 Solana NFT 铸造商店。
注意:本指南旨在向你展示如何在 Solana 上创建和铸造自己的 NFT 的工作流程和过程。而不是教授你底层技术。
Solana 生态系统中有很多内容需要学习,如果你打算超越我们提供的这条“快乐路径”,你需要深入挖掘并学习这些独立的部分!加油 :)
在继续之前,需要安装以下先决条件,我们将链接到每个项目的安装文档/指南,因为它们会比我们更好地解释如何安装。
先决条件:
Candy Machine 是一个利用 Metaplex CLI 生成 NFT、将图片和相关元数据链接到 NFT 代币并设置“公平拍卖”的工具。“公平拍卖”实际上由两个独立的部分组成。第一部分是它同时为所有人开始。没有预售!第二部分是如果没有更多的 NFT 可供铸造,它将不会发送交易。
不再需要将你的 SOL 投入虚空,不确定是否还有更多的版本可供铸造。虽然在这里你可以深入研究很多内部细节,但最好的学习方式是通过构建!
有两个不同的仓库可供使用。其中一个是由 candy-machine 维护者 构建的,另一个是由社区成员构建的 另一个仓库,它抽象了一些内容并创建了更简单的工作流程。在本教程中,我们将使用后者。但是,如果你需要偏离“快乐路径”,你将需要了解 Metaplex 的底层知识。
要分叉仓库,你需要前往社区成员的仓库,并点击顶部的 fork 按钮进行分叉。
分叉完成后,你需要克隆仓库:
git clone https://github.com/<YourUsernameHere>/solana-candy-factory
成功分叉项目后,你现在可以开始项目设置。
将所有代码拉取到本地机器后,你应该在选择的代码编辑器中打开 solana-candy-factory 文件夹。
完成上述步骤后,我们现在需要开始为开发设置项目。
首先要做的是通过运行以下命令来安装项目的依赖项:
yarn
安装依赖项后,你需要在 docker 中启动 postgres 数据库,该数据库将在 NFT 部署到网络之前保存它们。
yarn start-nft-manager-db
这将启动你的数据库,并允许 Strapi(一个无头 CMS,将保存我们所有的 NFT 信息)连接到 docker 容器。
这是这个仓库的真正亮点。你可以使用一个无头 CMS 来上传和管理所有的 NFT,然后再将它们发布到网上进行铸造。要设置这个,你需要运行以下命令:
yarn nft-manager
然后你可以导航到 http://localhost:1337/admin。首先,你需要创建一个免费的 Strapi 账户并登录。然后,你需要创建一个“用户”;为此,请点击如下所示的相应选项卡。
你的用户需要具有以下字段:
角色:已验证(这非常重要!)
剩下的就是保存你新创建的用户。完成后,我们现在可以继续创建一个集合。
集合与 NFT 具有一对多的关系。一个集合将有许多 NFT 指向它。这个过程与创建用户非常相似。转到 “集合” 选项卡以创建一个新集合。这里只有两个字段。“名称”和“系列”是与“集合”相关的唯一字段,因为我们在 Strappi 中填写的字段需要与 Solana NFT 元数据标准 中定义的 json 属性匹配。
“名称”应该是你正在启动的特定项目的名称,而“系列”可以是更大主题的一部分。
为了透明起见,我将按名称命名字段。
名称将是 "Collection_Name",系列将是 "Collection_Family"。你现在可以保存集合,并转到“NFTs”选项卡以创建你的个人 NFT。
我将向你展示我的样子,并解释每个字段的含义:
以下信息的格式 --> 字段名称:值 --- 解释。
?ext={file\_extension}
查询来提供有关文件类型的信息。{
"attributes": [\
{\
"value": "Solana",\
"trait_type": "Chain"\
},\
{\
"value": "QuickNode",\
"trait_type": "Company"\
},\
{\
"value": "Tutorial",\
"trait_type": "Category"\
},\
{\
"value": "Degen",\
"trait_type": "Status"\
}\
]
}
这将是你的 NFT 的“属性”。你不必拥有这些,它们是完全任意的。但是,如果你设置了属性,它_必须_同时具有值和 trait_type 字段。值可以是字符串或数字。
{
"files": [\
{\
"uri": "image.png",\
"type": "image/png"\
}\
],
"category": "image",
"creators": [\
{\
"share": 100,\
"address": "7K6XCSwVh3YZAh7GhARZ9pQ7gWkFNuWQ77U5CbV3PcF3"\
}\
]
}
属性包含许多关于显示内容的信息。它将链接到类型(参见支持的类型),指向 uri(上传到 arweave),然后链接到 NFT 的创建者。可以有多个创建者,只要“份额”总计为 100。
注意:你的图片必须是 .png 格式!
在填写了所有这些信息并设置适合你个人的值后,你已经准备好铸造 NFT 了!
一切就绪后,只需运行几个命令。由于我们构建在这个框架之上,因此只需要几个命令。
首先,我们需要确保所有 NFT 生成的资金都将归你所有!使用以下命令:
yarn update-creator-all-rows
然后它会要求你粘贴正确的地址。在这里输入你的 Solana 地址。这是之前的创建者地址!
然后你可以输入你应从艺术品未来销售中获得的版税百分比。这是 Seller_fee_basis_points 字段。
在仔细检查这些后,我们现在可以生成 NFT 数据。
yarn generate-nfts-sources
它会询问你是否要洗牌。这将随机化人们铸造 NFT 的顺序。如果你要大规模投放 5-10k 个 NFT,你可能不希望它们按顺序进行!这将为你随机化顺序。在本教程中,这并不重要,因为只有一个。
运行上一个命令后,你应该在 nft-manager/nfts-sources 文件夹中看到两个文件,0.json 和 0.png。
如果这些文件存在,你就可以开始部署了!
由于我们使用的是 devnet,因此与你在主网上部署的情况会_略有_不同,但仓库的 README 很好地涵盖了这些差异。你可以运行以下命令,并通过按“Enter”键而不输入任何其他内容来接受所有默认值。
yarn setup-dev
如果你想了解这个命令的内部工作原理,你可以在 readme 中找到!只需知道这是在设置负责铸造你之前生成的 NFT 的程序。
这就是部署过程的全部内容!
程序启动后,我们需要做的就是与之交互!要设置网站,请运行以下命令。
yarn dev
这将在 http://localhost:3000 启动一个网页。你可以连接你的钱包,然后点击如下所示的“铸造”按钮。
你可以看到图片中的那个已经没有可用的了,因为我们已经铸造了唯一的一个。如果你在没有可用的情况下尝试铸造,它会要求你确认交易;然后程序会拒绝它,因为没有剩余的可以给你。这回到了我们之前提到的“公平拍卖”。
如果一切顺利,你现在应该在你的 Phantom 钱包中有一个 NFT。这是我的样子!
恭喜!你刚刚在 Solana 上铸造了你的第一个 NFT!幕后发生了很多事情,我们没有涉及。如果你打算在主网上进行更大的 NFT 发布,我建议深入研究 Metaplex,以了解每个不同命令的工作原理,因为事情并不总是顺利进行,你希望能够解决问题,以防出现问题。话虽如此,你仍然学到了很多!
订阅我们的 新闻通讯 以获取更多关于以太坊的文章和指南。如果你有任何反馈,请随时通过 Twitter 联系我们。你还可以在我们的 Discord 社区服务器上与我们聊天,那里有一些你会遇到的最酷的开发者 :)
- 原文链接: quicknode.com/guides/sol...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!