AD
首页 > 数字货币 > 正文

手把手教你搭建 IPFS 私有收集_数字货币

[2021-01-31 21:41:37] 来源: 编辑:wangjia 点击量:
评论 点击收藏
导读: 普通人怎样在家运转以太坊2.0的节点普通人如何在家运行以太坊2.0的节点原文标题:《IPFS 搭建私有收集与运用》撰文:六天 在同盟链的场景下,IPFS 作为去中间化存储的首选计划,本文将引见怎样


普通人怎样在家运转以太坊2.0的节点

普通人如何在家运行以太坊2.0的节点

原文标题:《IPFS 搭建私有收集与运用》
撰文:六天

在同盟链的场景下,IPFS 作为去中间化存储的首选计划,本文将引见怎样运用 go-ipfs 搭建一个私有收集并举行简朴运用。

我的环境

因为资本限定,我这里运用 docker 来搭建一个两个节点的 IPFS 私有收集。假如有条件能够直接在多台机械或许多个假造机上装置。

入手下手搭建 1、生成 swarm.key

swarm.key 是一个同享密钥,只要具有雷同密钥的节点才相互通讯,构成一个私钥收集。swarm.key 能够运用 东西 生成,东西的装置敕令是:

 go get -u github.com/Kubuxu/go-ipfs-swarm-key-gen/ipfs-swarm-key-gen 

装置完成后,生成 swarm.key,敕令是:

 ipfs-swarm-key-gen /Users/sixdays/tmp/ipfs/swarm.key 

个中

/Users/sixdays/tmp/ipfs/ 目次是我 ipfs 目次。 /Users/sixdays/tmp/ipfs/node1 是我 ipfs 节点 1 目次。 /Users/sixdays/tmp/ipfs/node2 是我 ipfs 节点 2 目次。 2、启动节点

运转节点 1 和节点 2

 // 运转节点 1
docker run -d --name ipfs_node_1 -e IPFS_SWARM_KEY_FILE=/Users/sixdays/tmp/ipfs/swarm.key -v /Users/sixdays/tmp/ipfs/node1/staging:/export -v /Users/sixdays/tmp/ipfs/node1/data:/data/ipfs -p 4001:4001 -p 4001:4001/udp -p 127.0.0.1:8080:8080 -p 127.0.0.1:5001:5001 ipfs/go-ipfs:latest
// 运转节点 2
docker run -d --name ipfs_node_2 -e IPFS_SWARM_KEY_FILE=/Users/sixdays/tmp/ipfs/swarm.key -v /Users/sixdays/tmp/ipfs/node2/staging:/export -v /Users/sixdays/tmp/ipfs/node2/data:/data/ipfs -p 4002:4001 -p 4002:4001/udp -p 127.0.0.1:8081:8080 -p 127.0.0.1:5002:5001 ipfs/go-ipfs:latest

消灭一切缺省启动节点 bootstrap

 docker exec ipfs_node_1 ipfs bootstrap rm all 
 docker exec ipfs_node_2 ipfs bootstrap rm all 

检察节点 id

 docker exec ipfs_node_1 ipfs id 
 docker exec ipfs_node_2 ipfs id 

这里,我节点 1 的 Id 是 :
12D3KooWEVo8FqH8YUT1noXvca5hgSRWBRcDQomEcFY2zXwA7dbw
节点 1 的 address 是:
/ip4/172.17.0.3/tcp/4001/p2p/12D3KooWEVo8FqH8YUT1noXvca5hgSRWBRcDQomEcFY2zXwA7dbw

节点 2 的 Id 是
12D3KooWRcx6gpbsbvb6YiNsDpJgnmNHFCgCiUmVF42o4zn2W5Pj
节点 2 的 address 是
/ip4/172.17.0.4/tcp/4001/p2p/12D3KooWRcx6gpbsbvb6YiNsDpJgnmNHFCgCiUmVF42o4zn2W5Pj

节点的 address 我用的是 docker 给分派的 ip 地点。

增加节点 id

在节点 1 中增加节点 2 地点

docker exec ipfs_node_1 ipfs bootstrap add /ip4/172.17.0.4/tcp/4001/p2p/12D3KooWRcx6gpbsbvb6YiNsDpJgnmNHFCgCiUmVF42o4zn2W5Pj

在节点 2 中增加节点 1 地点

docker exec ipfs_node_1 ipfs bootstrap add /ip4/172.17.0.3/tcp/4001/p2p/12D3KooWEVo8FqH8YUT1noXvca5hgSRWBRcDQomEcFY2zXwA7dbw

至此,我们 2 个节点的 IPFS 私有收集已搭建完成。

运用敕令

 docker exec ipfs_node_1 ipfs -h 

能够看到 IPFS 的基本敕令。

增加文件 add
 $ docker exec ipfs_node_1 ipfs add /data/ipfs/swarm.key 
 added QmRitSEMhFJtNhLYtwGRJvhDrTTT4gQLjuLepZjo9C8a2X swarm.key 

个中 :

/data/ipfs/swarm.key 为 ipfs_node_1 容器的目次。

QmRitSEMhFJtNhLYtwGRJvhDrTTT4gQLjuLepZjo9C8a2X 为文件 hash

检察文件 cat
 $ docker exec ipfs_node_2 ipfs cat QmRitSEMhFJtNhLYtwGRJvhDrTTT4gQLjuLepZjo9C8a2X 
 /key/swarm/psk/1.0.0/ 
 /base16/ 
 5b9941085678c502b44cc98e2614dd648cb801115dcb6acee8e83d9bf8cf454c 

能够看到我们能够在 node2 中检察到 node1 上传的文件内容。

下载文件 get
 $ docker exec ipfs_node_2 ipfs get QmRitSEMhFJtNhLYtwGRJvhDrTTT4gQLjuLepZjo9C8a2X -o /data/ipfs/test.key 
 Saving file(s) to /data/ipfs/test.key 
 95 B / 95 B 100.00% 0s 

个中 -o 示意输出目次,docker 容器中的 /data/ipfs 对应我们主机目次为 /Users/sixdays/tmp/ipfs/node2/data

检察文件列表 ls
 $ docker exec ipfs_node_2 ipfs pin ls 
 QmQ5vhrL7uv6tuoN9KeVBwd4PwfQkXdVVmDLUZuTNxqgvm indirect 
 QmU5k7ter3RdjZXu3sHghsga1UQtrztnQxmTL22nPnsu3g indirect 
 QmYCvbfNbCwFR45HiNP45rwJgvatpiW38D961L5qAhUM5Y indirect 
 QmejvEPop4D7YUadeGqYWmZxHhLc4JBUCzJJHWMzdcMe2y indirect 
 QmPZ9gcCEpqKTo6aq61g2nXGUhM4iCL3ewB6LDXZCtioEB indirect 
 QmQGiYLVAdSHJQKYFRTJZMG4BXBHqKperaZtyKGmCRLmsF indirect 
 QmQPeNsJPyVWPFDVHb77w8G42Fvo15z4bG2X8D2GhfbSXc recursive 
 QmQy6xmJhrcC5QLboAcGFcAE1tC8CrwDVkrHdEYJkLscrQ indirect 
 QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn recursive 

个中 recursive 示意文件夹,indirect 示意文件

参考

go-ipfs:https://github.com/ipfs/go-ipfs

ipfs-swarm-key-gen:https://github.com/Kubuxu/go-ipfs-swarm-key-gen

ipfs 文档:https://www.jianshu.com/p/e38d5f733c81


加入新手交流群:每天早盘分析、币种行情分析,添加助理微信

一对一专业指导:chengqing930520

最新资讯
提供比特币数字货币以太坊eth,莱特币ltc,EOS今日价格、走势、行情、资讯、OKEX、币安、火币网、中币、比特儿、比特币交易平台网站。

2021 数字货币 网站地图

查看更多:

为您推荐