Difference between revisions of "InterPlanetary File System"
From MgmtWiki
(→Context) |
(→Windows) |
||
Line 10: | Line 10: | ||
* ~ tilde is the same as $HOME which in Powershell is $env:USERPROFILE | * ~ tilde is the same as $HOME which in Powershell is $env:USERPROFILE | ||
* ~/ipfs is the default directory for all things ispf include the config file | * ~/ipfs is the default directory for all things ispf include the config file | ||
+ | * the most significant part of the config that might want to be changed are here - note in particular "API": "/ip4/127.0.0.1/tcp/5001", which may need to be changed to 0.0.0.0 | ||
+ | <pre> | ||
+ | "Addresses": { | ||
+ | "Swarm": [ | ||
+ | "/ip4/0.0.0.0/tcp/4001", | ||
+ | "/ip6/::/tcp/4001", | ||
+ | "/ip4/0.0.0.0/udp/4001/quic", | ||
+ | "/ip6/::/udp/4001/quic" | ||
+ | ], | ||
+ | "Announce": [], | ||
+ | "NoAnnounce": [], | ||
+ | "API": "/ip4/127.0.0.1/tcp/5001", | ||
+ | "Gateway": "/ip4/127.0.0.1/tcp/8080" | ||
+ | }, | ||
+ | "Mounts": { | ||
+ | "IPFS": "/ipfs", | ||
+ | "IPNS": "/ipns", | ||
+ | "FuseAllowOther": false | ||
+ | } | ||
+ | </pre> | ||
==Installing== | ==Installing== |
Revision as of 14:52, 4 November 2020
Full Title
The InterPlanetary File System (IPFS) is a protocol and peer-to-peer network for storing and sharing data in a distributed file system. IPFS uses content-addressing to uniquely identify each file in a Global Namespace connecting all computing devices.[1]
Context
- IPFS was first deployed in 2015 and grew by word-of-mouth as a replacement to HTTP for static content.
- It allows users to host content as well as to search for it.
- If users do not wish to host content, they can access IPFS by a public gateway.
Windows
The context of this wiki page is windows, but the typical context of go is GNU so some helpful translations are
- ~ tilde is the same as $HOME which in Powershell is $env:USERPROFILE
- ~/ipfs is the default directory for all things ispf include the config file
- the most significant part of the config that might want to be changed are here - note in particular "API": "/ip4/127.0.0.1/tcp/5001", which may need to be changed to 0.0.0.0
"Addresses": { "Swarm": [ "/ip4/0.0.0.0/tcp/4001", "/ip6/::/tcp/4001", "/ip4/0.0.0.0/udp/4001/quic", "/ip6/::/udp/4001/quic" ], "Announce": [], "NoAnnounce": [], "API": "/ip4/127.0.0.1/tcp/5001", "Gateway": "/ip4/127.0.0.1/tcp/8080" }, "Mounts": { "IPFS": "/ipfs", "IPNS": "/ipns", "FuseAllowOther": false }
Installing
- go ipfs installation instructions
- go ipfs on Github from Google has installation and test advice using the command line interpreter (CLI) instructions.
For Windows using chocolatey.
> choco install go-ipfs > ipfs init > ipfs daemon
By default the client looks for a daemon at http://localhost:5001. This can be overridden by either setting the environment variable IpfsHttpUrl or initializing the client with an URL.
// js-ipfs likes this address static readonly IpfsClient ipfs = new IpfsClient("http://127.0.0.1:5002");
Test to see if the daemon is running by typing this in your browser.
http://localhost:5001/ipfs/bafybeianwe4vy7sprht5sm3hshvxjeqhwcmvbzq73u55sdhqngmohkjgs4/#/
Solutions
- the [Sidetree] protocol uses IPFS to insure that Identifiers are unique.
References
- ↑ Klint Finley, The Inventors of the Internet Are Trying to Build a Truly Permanent Web (2016-06-20) Wired (magazine) https://www.wired.com/2016/06/inventors-internet-trying-build-truly-permanent-web/