安装IPFS
# go get github.com/jbenet/go-ipfs/cmd/ipfs
# wget https://dist.ipfs.io/go-ipfs/v0.4.13/go-ipfs_v0.4.13_linux-amd64.tar.gz
tar xfz go-ipfs_v0.4.13_linux-amd64.tar.gz
cd go-ipfs
./install.sh
IPFS就装好了,运行ipfs help
检验是否可以正确运行
ipfs help
初始化一个工作区
# mkdir root && cd root
# ipfs init
添加文件到IPFS
# echo "Hello, IPFS" > my.txt
# ipfs add my.txt
added QmYKZbwYeut9LRQg721i8BHL9skhyz8TsraU41Lo6VLzc5 my.txt
加完后,ipfs cat可以看到文件内容
# ipfs cat QmYKZbwYeut9LRQg721i8BHL9skhyz8TsraU41Lo6VLzc5
启动Daemon服务
# ipfs daemon
启动之后,就可以通过HTTP访问文件内容,比如刚才的文件
# curl "http://127.0.0.1:8080/ipfs/QmYKZbwYeut9LRQg721i8BHL9skhyz8TsraU41Lo6VLzc5"
查看自己的id和周围的邻居
查看自己的id
# ipfs id
查看自己的邻居
# ipfs swarm peers
/ip4/101.230.211.162/tcp/4001/ipfs/QmeZCurirTSSaeLQTukuVVEjiijNz7jjReniLxFvKKGeeU
...
# ipfs id QmeZCurirTSSaeLQTukuVVEjiijNz7jjReniLxFvKKGeeU
通过internet访问
到达这个状态,就可以通过internet访问,从测试看,从文件add到IPFS,到通过internet能看到文件,需要相当长一段时间(大概以天计算,还需要进一步验证)
https://ipfs.io/ipfs/QmYKZbwYeut9LRQg721i8BHL9skhyz8TsraU41Lo6VLzc5
https://gateway.ipfs.io/ipfs/QmYKZbwYeut9LRQg721i8BHL9skhyz8TsraU41Lo6VLzc5
https://dweb.link/ipfs/QmYKZbwYeut9LRQg721i8BHL9skhyz8TsraU41Lo6VLzc5
文件上传到ipfs网络后,通过任何一个ipfs 节点的http网关,都可以访问到。上面3个链接,访问到的内容是一样的。
管理自己的IPFS节点
使用浏览器访问 http://localhost:5001/webui, 打开后会调到一个类似http://localhost:5001/ipfs/QmPhnvn747LqwPYMJmQVorMaGbMSgA7mRRoyyZYz3DoZRQ 这样的地址。这就是当前节点的管理界面。