Ipfs介绍

Ipfs(Inter-Planetary File System!),中文译为星际网络文件系统,是基于默克尔有向无环图(merkle dag)的全球性p2p文件系统。

是一个面向全球的,点对点的分布式文件系统 。用基于内容的地址替代基于域名的地址(HTTP)。能提供比传统HTTP更稳定,更安全的服务。

Ipfs安装

系统:windows 10

Go:1.11.1

ipfs的安装有几种方式:

  1. 已经预编译好的包(推荐)
  2. 通过ipfs-update
  3. 源码安装

我这里用的是第1种,点这里下载: 这里选择自已相应平台的包就行了

Ipfs官方使用的是golang和javascript.也就是我们所说的go-ipfs和js-ipfs。我们选择go-ipfs就行

安装包下载完后,解压后,将ipfs.exe所在的路径,加到PATH里面就行了

进入cmd终端,输入ipfs version显示如下输出,表示安装成功。

d:\mywork\ipfs>ipfs version
ipfs version 0.4.18

基本使用

我们来一个最基本的使用,将一个文件加到ipfs后,然后下载它。

初始化

ipfs在首次使用时,需要先初始化。用来存储配置和它内部用到的一些数据。

ipfs init
initializing ipfs node at C:\Users\Administrator\.ipfs
generating 2048-bit RSA keypair...done
peer identity: Qmcpo2iLBikrdf1d6QU6vXuNb6P7hwrbNPW9kLAH8eG67z
to get started, enter: ipfs cat /ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme

会生成一个peer(结点),其它结点会通过这个结点找到你

如果忘记了,可以通过如下命令显示和获取到。

ipfs id
d:\mywork\ipfs>ipfs id
{
"ID": "QmPUeLNAyiLY81LhQjd5otbeEoqDyQjwyRLiMQnX3yjJYr",
"PublicKey": "CAASpgIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDrvb81+XUqHOgh4fxqPfseyryOYMRaNY7xfQpolKR4dgx0rfF4dp+NBHrg8tZ0BDIagsY5CxPYzYhtRjBaimB+Nxp76u7BLyNOGE+/EIjC/qa0oxFRq2XFQwuf7ELnuxjaMpTz0U1diDXUXGlS24PrgBdqMMsFWSau+BCP7YL3efvLXZmCwJsxzUexAtlqvUsFH6bimOh97kSizAEXqQwPMKD7gqTmVRepWz8Zi4pDnmaHn9NgegA1ca25By7fatyLtzcbRdNlupJoIGsvO1xyju1rQnHWwACamlHbLuE2pgt/z4LUOBUz2XLqrU7Tk3+USfSsuK8EF9kcbsODc4mNAgMBAAE=",
"Addresses": null,
"AgentVersion": "go-ipfs/0.4.18/",
"ProtocolVersion": "ipfs/0.1.0"
}

Going Online(上线)

不管是使用Ipfs的cli或http。我们需要在本地将Ipfs网络上线。可同步结点数据到Ipfs网络

新开一个终端,执行如下命令

C:\Users\Administrator>ipfs daemon
Initializing daemon...
go-ipfs version: 0.4.18-
Repo version: 7
System version: amd64/windows
Golang version: go1.11.1
Swarm listening on /ip4/10.8.200.77/tcp/4001
Swarm listening on /ip4/127.0.0.1/tcp/4001
Swarm listening on /ip6/::1/tcp/4001
Swarm listening on /p2p-circuit
Swarm announcing /ip4/10.8.200.77/tcp/4001
Swarm announcing /ip4/127.0.0.1/tcp/4001
Swarm announcing /ip6/::1/tcp/4001
API server listening on /ip4/127.0.0.1/tcp/5001
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080

另外,Ipfs还提供了一个web界面的控制台,可以查看集群结点的状态。

http://localhost:5001/webui

add文件,这里传的文件,不会马上到ipfs网络,除非有人访问过。

d:\mywork\ipfs>ipfs add hello.txt
10 B / 10 B [=====================================================================================================================================================================================================================] 100.00%added QmYXxGFEnYfwheuSS6ppLSHgFpLg7i2g499dz358XtMNbe hello.txt
added QmYXxGFEnYfwheuSS6ppLSHgFpLg7i2g499dz358XtMNbe hello.txt
10 B / 10 B [=====================================================================================================================================================================================================================] 100.00%

上面的文件add后并没有到Ipfs网络,可以通过本地访问 http://localhost:8080/ipfs/QmYXxGFEnYfwheuSS6ppLSHgFpLg7i2g499dz358XtMNbe

通过 "ipfs daemon“ 这个能自动同步结点数据,成功后就能通过外网访问 https://ipfs.io/ipfs/QmYXxGFEnYfwheuSS6ppLSHgFpLg7i2g499dz358XtMNbe

下载到本地

d:\mywork\ipfs>ipfs get QmYXxGFEnYfwheuSS6ppLSHgFpLg7i2g499dz358XtMNbe
Saving file(s) to QmYXxGFEnYfwheuSS6ppLSHgFpLg7i2g499dz358XtMNbe
18 B / 18 B [==============================================================================================================================================================

官网:https://docs.ipfs.io

汇智网:http://cw.hu bwiz.com/card/c/ipfs/1/1/1/

Ipfs基础入门的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. 「译」JUnit 5 系列:基础入门

    原文地址:http://blog.codefx.org/libraries/junit-5-basics/ 原文日期:25, Feb, 2016 译文首发:Linesh 的博客:JUnit 5 系列: ...

  3. .NET正则表达式基础入门

    这是我第一次写的博客,个人觉得十分不容易.以前看别人写的博客文字十分流畅,到自己来写却发现十分困难,还是感谢那些为技术而奉献自己力量的人吧. 本教程编写之前,博主阅读了<正则指引>这本入门 ...

  4. 从零3D基础入门XNA 4.0(2)——模型和BasicEffect

    [题外话] 上一篇文章介绍了3D开发基础与XNA开发程序的整体结构,以及使用Model类的Draw方法将模型绘制到屏幕上.本文接着上一篇文章继续,介绍XNA中模型的结构.BasicEffect的使用以 ...

  5. 从零3D基础入门XNA 4.0(1)——3D开发基础

    [题外话] 最近要做一个3D动画演示的程序,由于比较熟悉C#语言,再加上XNA对模型的支持比较好,故选择了XNA平台.不过从网上找到很多XNA的入门文章,发现大都需要一些3D基础,而我之前并没有接触过 ...

  6. Shell编程菜鸟基础入门笔记

    Shell编程基础入门     1.shell格式:例 shell脚本开发习惯 1.指定解释器 #!/bin/bash 2.脚本开头加版权等信息如:#DATE:时间,#author(作者)#mail: ...

  7. [Spring框架]Spring AOP基础入门总结二:Spring基于AspectJ的AOP的开发.

    前言: 在上一篇中: [Spring框架]Spring AOP基础入门总结一. 中 我们已经知道了一个Spring AOP程序是如何开发的, 在这里呢我们将基于AspectJ来进行AOP 的总结和学习 ...

  8. [Spring框架]Spring AOP基础入门总结一.

    前言:前面已经有两篇文章讲了Spring IOC/DI 以及 使用xml和注解两种方法开发的案例, 下面就来梳理一下Spring的另一核心AOP. 一, 什么是AOP 在软件业,AOP为Aspect ...

  9. RobotFramework - 基础入门

    Robot Framework Wiki HomePage Robot Framework User Guide Robot Framework documentation Robot Framewo ...

随机推荐

  1. 3.2 Spark运行架构

    一.基本概念 1.RDD Resillient Distributed Dataset 弹性分布式数据集 2.DAG 反映RDD之间的依赖关系 3.Executor 进程驻守在机器上面,由进程派生出很 ...

  2. C#实体类(复杂类)与XML互相转换

    实体类转换成XML方法: 将实体类转换成XML需要使用XmlSerializer类的Serialize方法,将实体类序列化 public static string XmlSerialize<T ...

  3. 《Ensemble Methods: Foundations and Algorithms》

    <Ensemble Methods: Foundations and Algorithms>

  4. Comet OJ 计算机(computer)

    Comet OJ 计算机(computer) 题目传送门 题目描述 小 X 有一台奇怪的计算机. 这台计算机首先会读入一个正整数 nn,然后生成一个包含 nn 个数的序列 aa. 一开始 a_i(1 ...

  5. <String> 345 205

    345. Reverse Vowels of a String 头尾指针开始扫描. String.contains(char) class Solution { public String rever ...

  6. cf1207解题报告

    cf1207解题报告 A 模拟 #include <bits/stdc++.h> #define ll long long using namespace std; ll T,a,b,c, ...

  7. 洛谷 P5461 赦免战俘

    洛谷 P5461 赦免战俘 传送门 思路 洛谷7月月赛第一题 着实是一道大水题,然后我月赛的时候没做出来...... 就是一道大模拟题呀,直接dfs就好了,我是反着处理的,所以最后要输出\(1-a[i ...

  8. KMP 串的模式匹配 (25分)

    给定两个由英文字母组成的字符串 String 和 Pattern,要求找到 Pattern 在 String 中第一次出现的位置,并将此位置后的 String 的子串输出.如果找不到,则输出“Not ...

  9. Ubuntu18.04开机挂载硬盘

    一.查看磁盘信息      fstab文件的格式如上,其中: 1.设备文件名称是指磁盘或分区的文件名称,也可以使用label或uuid.UUID可以通过"sudo blkid"命令 ...

  10. Scala 准引用 - Quasiquote介绍

    Quasiquotes are a neat notation that lets you manipulate Scala syntax trees with ease: scala> val ...