Fork me on GitHub

星际文件系统(InterPlanetary File System,IPFS)介绍

构建下一代互联网,IPFS is the Distributed Web.

官网:https://ipfs.io

Github:https://github.com/ipfs/ipfs

星际文件系统(InterPlanetary File System,缩写IPFS)是一个旨在创建持久且分布式存储和共享文件的网络传输协议。它是一种内容可寻址的对等超媒体分发协议。在IPFS网络中的节点将构成一个分布式文件系统。它是一个开放源代码项目,自2014年开始由Protocol Labs在开源社区的帮助下发展。其最初由Juan Benet设计。 ——维基百科

重点:上传到IPFS上的文件一般是永存的!

先介绍

基于IPFS的应用——Awesome IPFS Apps

可以直接把图片,音乐等文件上传,可以当作图床,不过不支持压缩包文件,文件大小小于100M,上传后会得到一串Hash值。

可以在线播放存储在 IPFS 网络的视频文件,只需要填写文件的 IPFS hash 值即可。

你可以在这里上传视频文件( 256M 以内),或者通过 IPFS 客户端(下文介绍)上传视频到 IPFS 网络。

A distributed file shareing and hosting app which built on IPFS. 也可以直接上传图片,音乐和视频,似乎没有大小限制?

  • DTube 短片上传及播放,类似Youtube

IPFS技术还未落地?国外许多IPFS应用场景早已经吊炸天了!

欢迎推荐其他有趣的Apps

IPFS客户端

go-ipfs命令行版(以windows为例)

中文翻译: <ipfs/go-ipfs> 星际文件系统-go实现 ❤️ 更新 ✅

下载与安装

这里(需代理),或Github(最下面)下载

win是下载这个文件:go-ipfs_v0.4.19_windows-amd64.zip

解压,在go-ipfs文件夹下打开cmd

执行ipfs help如下显示,即表示ipfs运行成功了。

初始化节点

执行ipfs init

会完成初始化配置,并生成你的ipfs节点,以Qm开头的字符串

由于我已经初始化过了,会这样显示

查看readme,可以执行ipfs cat /ipfs/<你的字符串>/readme

上线节点

执行ipfs daemon

即成功上线!

上传文件

在go-ipfs文件夹下打开一个新的cmd窗口

比如上传我在D盘的一张名为Forever的jpg图片

执行ipfs add D:/Forever.jpg即可

会得到一串Hash值,表示这张图片已经上传到IPFS网络了:QmTPvXyxxmcoUzxjvRkLSvMvuznVgFnbFsEbLEBuwpSabx

在浏览器里打开

https://ipfs.io/ipfs/QmTPvXyxxmcoUzxjvRkLSvMvuznVgFnbFsEbLEBuwpSabx

就可以看到这张图片了,不过由于ipfs.io无法访问,我们可以通过其他网关来显示。

https://ipfs.github.io/public-gateway-checker/

上面这个网站显示了IPFS的其他公共网关,那我们可以找一个可以访问的。比如这个,就可以看到图片了。

https://ipfs.sloppyta.co/ipfs/QmTPvXyxxmcoUzxjvRkLSvMvuznVgFnbFsEbLEBuwpSabx

那我们也可以上传视频,比如我在go-ipfs下放了一个名为Think_Different.avi的视频

那么执行ipfs add Think_Different.avi,就把视频传到IPFS网络了。

小技巧:在go-ipfs文件夹下无需加路径,输入首几个字母按Tab就可以自动补全

同样会有一串Hash值QmU9u2pEFpzBFByYzoeXrXrnKZjW9SZPnGbQmq5hRUDH1T

还记得前面的IPFS应用嘛,把这串Hash复制到框里就可以直接播放啦!比如https://www.ipfs.guide/

上传文件夹的命令:ipfs add -r <路径> <文件名>

下载文件

很简单,就是通过ipfs get <hash>即可

比如我之前传上去的图片的Hash是QmTPvXyxxmcoUzxjvRkLSvMvuznVgFnbFsEbLEBuwpSabx

那么执行ipfs get QmTPvXyxxmcoUzxjvRkLSvMvuznVgFnbFsEbLEBuwpSabx即可

不过下载过来后是这样的

我们需要在文件名后面加上.jpg,就会变成图片啦!

如果你通过IPFS分享文件给朋友,记得是Hash和文件扩展名哦

其实下载文件的话,不通过客户端,通过公共网关+Hash也可。

还有个js-ipfs版本:https://js.ipfs.io/zh-CN/

IPFS桌面版客户端

Github地址:https://github.com/ipfs-shipyard/ipfs-desktop

桌面版无需以上配置,直接打开就好,很方便,不过缺点是上传文件的时候看不到进度。


期待去中心化互联网!

本文标题:星际文件系统(InterPlanetary File System,IPFS)介绍

文章作者:FKT

发布时间:2019年03月27日 - 13:03

最后更新:2019年06月06日 - 18:06

原始链接:https://freeknight.cf/2019/03/27/ipfs/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------