IPFS 整理笔记

2018年8月10日 作者 jacky

IPFS是什么

IPFS全称Interplanetary File System,直译过来就是“星际文件系统”,是一个点对点的超媒体协议(“A peer-to-peer hypermedia protocol”——官网对其的最简说明)。

根据这个说明,IPFS的本质是一份“协议”,丰富一点来说时一份针对“超媒体”的协议,而“点对点”是通过该协议组织起来的网络的格局。也就是说,在这样一个中心化的存储网络(DecentralizedStorage Network)中,每个节点都可以提供存储空间,供网络中的其他节点进行存储,同时也提供传输,依据规则向网络中需要读取该文件的节点发送本地存储的文件。

IPFS 环境配置

下载 go-ipfs,然后进行解压。这是环境变量。

在控制台中输入 ipfs version,显示版本信息则配置成功。

新建一个文件夹,并用ipfs初始化。

修改ipfs配置参数

然后修改相应的配置项保存就可以了。

查看节点ID

添加文件到ipfs

使用命令 ipfs add 文件,如果是文件夹可以使用递归参数 -r,更多命令请查看 ipfs --help

当添加完了文件,会返回一个哈希值,这个哈希值用于以后查看本次提交的内容。

Pin

IPFS 的本意是让用户觉得所有文件都是在本地的,没有“从远程服务器上下载文件”。Pin 是将文件长期保留在本地,不被垃圾回收。

执行 ipfs pin ls 可以查看哪些文件在本地是持久化的,通过 add 添加的文件默认就是 pin 过的。

启动ipfs系统

启动ipfs系统,将我们的文件内容同步到公网上。

这个过程需要一点时间。。。。。

通过我们的哈希值在域名上访问。
https://ipfs.io/ipfs/QmNRUyAhqDY3JB2iohYX5TisqWrt5RSnDdXWHW8FTF9mxF

也可以访问本地webUi
http://localhost:5001/webui

跨域资源共享CORS配置

只需要执行以下命令即可