# 分型网生态 CAT Protocol 铸造教程 **Published by:** [sddcg](https://paragraph.com/@sddcg/) **Published on:** 2024-09-11 **URL:** https://paragraph.com/@sddcg/cat-protocol ## Content 晚上看到各个群里都在打cat,我也来凑凑热闹,感谢乐于奉献的大佬们提供教程,让我明白了如何部署,为了让更多小伙伴少走弯路,我就借花献佛也出份教程。(后面新增疑难杂症环节)我已经准备了4台服务器,有需要代打的小伙伴可以联系我,代打费用比 三方网站便宜很多,只收取10%的费用,欢迎有需要的老板联系。另外自己部署环境有困难的也可以找我,帮你部署cat20环境。 联系方式wx: t528617001. 准备工作因为分型链需要在21000区块后才做索引,我们先要铸造CAT,需要自己准备不少东西服务器一台 建议创建一个 ubuntu 服务器来跑,避免环境部署问题,可以选用腾讯云、contabo等云服务器。注意选择国外服务器避免拉取、安装问题,注意配置CPU 2 核、内存 4GB,并且使用按量付费。 服务器用于部署 Fractal 全节点、索引器, 并运行 mint脚本FB代币 分型连使用FB作为gas,需要准备足够的FB,目前链上gas被打到1800聪了,建议准备1FB起步吧,想大批量那就需要更多,另外大批量的最好进行utxo的拆分SSH远程工具 比如FinalShell、xshell 等用来远程登录服务器进行操作2. 服务器基本环境部署首先安装 Docker、docker-compose和 node.js 环境sudo apt-get update # 安装docker sudo apt-get install docker.io -y # 安装 docker-compose VERSION=$(curl --silent https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*\d') DESTINATION=/usr/local/bin/docker-compose sudo curl -L https://github.com/docker/compose/releases/download/${VERSION}/docker-compose-$(uname -s)-$(uname -m) -o $DESTINATION sudo chmod 755 $DESTINATION # 安装npm及nodejs sudo apt-get install npm -y sudo npm install n -g sudo n stable # 安装yarn sudo npm i -g yarn 拉取cat的代码并编译拉取 github 的仓库,并且进行编译git clone https://github.com/CATProtocol/cat-token-box cd cat-token-box sudo yarn install sudo yarn build 3. Fractal 全节点部署CAT 是在 Fractal 主网上的协议,所以需要在服务器上运行一个 Fractal 全节点,由于现在 Fractal 网络的区块不多,所以同步是特别快的,这个和网络速度有关系。 部署Fractal 节点命令如下cd ./packages/tracker/ sudo chmod 777 docker/data sudo chmod 777 docker/pgdata sudo docker-compose up -d 运行完他会自动进行同步的,直接进行下一步就可以了4. 索引器部署CAT Protocol 需要运行一个本地的索引器,下面是编译和运行的命令cd ../../ sudo docker build -t tracker:latest . sudo docker run -d \ --name tracker \ --add-host="host.docker.internal:host-gateway" \ -e DATABASE_HOST="host.docker.internal" \ -e RPC_HOST="host.docker.internal" \ -p 3000:3000 \ tracker:latest 5. 创建配置文件及本地钱包在完成全节点和索引器的运行后,接下来要创建配置文件。首先要在 cat-token-box/package/cli 目录下创建 config.json文件,命令如下:cd ~/cat-token-box/packages/cli vim config.json 然后复制下面的配置信息,在服务器上按一下 i 键,然后鼠标邮件进行粘贴,之后按 esc 键,然后输入 :wq 再回车保存。注意 其中maxFeeRate为gas,这个要根据当前网络情况进行调整,可以在配置文件中调整也可以在后面的命令行中设置{ "network": "fractal-mainnet", "tracker": "http://127.0.0.1:3000", "dataDir": ".", "maxFeeRate": 1800, "rpc": { "url": "http://127.0.0.1:8332", "username": "bitcoin", "password": "opcatAwesome" } } 6. 创建本地钱包并转入FB执行下面的指令创建新钱包sudo yarn cli wallet create 如果显示类似下面的信息,那么就是创建完成了(这里码住了助记词),注意自己要保管好助记词哦将助记词导入到自己的钱包中,就可以得到对应的地址了。也可以通过如下命令查看地址:yarn cli wallet address 然后给这个地址转入足够的FB就可以了7. 等待同步到位在mint前需要等待区块同步到位,可以通过查看钱包余额的方式来检查是否同步完成yarn cli wallet balances 如果没同步完,会显示如下内容,据说90%以上的比例就可以进行mint了,也有人说80%就行,但我80%试了不行8. mint cat单次mint使用如何命令:sudo yarn cli mint -i 45ee725c2c5993b3e4d308842d87e973bf1951f5f7a804b21e4dd964ecd12d6b_0 5 --fee-rate 1800 这里可以加后面 --fee-rate 1800 参数,也可以不加,不加的话自动取配置文件中设置的gas每次的 mint 指令只能铸造一次,所以需要脚本来重复执行,在当前的 cli 目录下创建一个 script.sh 文件,内容复制下面的:#!/bin/bash command="sudo yarn cli mint -i 45ee725c2c5993b3e4d308842d87e973bf1951f5f7a804b21e4dd964ecd12d6b_0 5 --fee-rate 1800" while true; do $command if [ $? -ne 0 ]; then echo "命令执行失败,退出循环" exit 1 fi sleep 1 done 然后添加运行权限 chmod +x script.sh 最后运行这个脚本文件就可以重复 mint 了,如果需要后台执行的可以查一下 nohup 和screen 指令。其他相关命令待补充 检查mint数量,在packages/cli目录下输入: yarn cli wallet balances疑难杂症环节:大家可能会遇到可能千奇百怪的问题,部分问题是钱包地址原因,还有部分问题是节点原因,解决办法有:如果是钱包问题先看看区块同步进度是否正常然后就检查钱包余额,是否有交易卡住了,如果都没问题还提示余额不足,那就钱包进行几次自转,再不行就换个钱包如果是服务器区块问题,就重启全节点和索引器# 重启全节点 cd ~/cat-token-box/packages/tracker docker compose down docker compose up -d #查看节点日志 docker compose logs -f # 重启索引器 docker restart tracker # 查看索引器日志 docker logs -f -n 100 tracker 另外就是区块同步很慢的问题,这个大家如果能找到现成的数据,可以通过hsql进行导入,免去漫长的索引过程。 如果找不到数据,又不想等的话,也可以联系我。 ## Publication Information - [sddcg](https://paragraph.com/@sddcg/): Publication homepage - [All Posts](https://paragraph.com/@sddcg/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@sddcg): Subscribe to updates - [Twitter](https://twitter.com/jamsddcg): Follow on Twitter