0.準備する
IPFS の最新リリース バージョンv0.4.23をダウンロードし、解凍して$PATH
ディレクトリ。ここではゼロタイム ディレクトリに配置されます。
version=v0.4.23
platform="$(uname -s | tr '[:upper:]' '[:lower:]')-$(if [[ $(uname -m) == 'x86_64' ]]; then echo amd64; else echo 386; fi)"
curl -L -O "https://github.com/ipfs/go-ipfs/releases/download/${version}/go-ipfs_${version}_${platform}.tar.gz"
tar zxf go-ipfs_${version}_${platform}.tar.gz
export PATH=$(pwd)/go-ipfs:$PATH
ipfs version
ipfs version 0.4.23
倉庫の初期化
ipfs init
initializing IPFS node at /Users/xxx/.ipfs
generating 2048-bit RSA keypair...done
peer identity: Qmc...KU
to get started, enter:
ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme
IPFSデーモンを起動
ipfs daemon &
1.IPLDテスト
データファイルは以下のとおりです
bar.json
{
"name": "bar",
"hello": "world"
}
ipfs dag put bar.json
bafyreiby2qsza5rib7r5tg5l5womhdza5mhhs4dm5fl4yimpgym5mnmni4
foo.json
{
"foo":"foobar",
"bar": {
"/":"bafyreiby2qsza5rib7r5tg5l5womhdza5mhhs4dm5fl4yimpgym5mnmni4"}
}
ipfs dag put foo.json
bafyreihqv4bepuvxvz4mpxeusfbrase7o7celwhba7fyhyp4gi2ngb5wqm
次のコマンドをテストし、出力が次の場所に移動するのを確認します
ipfs dag get bafyreihqv4bepuvxvz4mpxeusfbrase7o7celwhba7fyhyp4gi2ngb5wqm
ipfs dag get bafyreihqv4bepuvxvz4mpxeusfbrase7o7celwhba7fyhyp4gi2ngb5wqm/foo
ipfs dag get bafyreihqv4bepuvxvz4mpxeusfbrase7o7celwhba7fyhyp4gi2ngb5wqm/bar
ipfs dag get bafyreihqv4bepuvxvz4mpxeusfbrase7o7celwhba7fyhyp4gi2ngb5wqm/bar/name
Webuiを開きます。コンテンツは IPFS ネットワークに保存されているため、最初に開くとダウンロードが開始され、ダウンロード時間はネットワークの状態によって異なります。
2.IPNSテスト
ipfs add foo.json
added QmRU7LLztHCp3ZaEYxLSndnVc9BWft8WX2McHQPkvfQH25 foo.json
103 B / 103 B [===========================================================================] 100.00
ゲートウェイを開いて表示
foo.json を変更する
{
"foo":"foobar",
"bar": {
"/":"bafyreiby2qsza5rib7r5tg5l5womhdza5mhhs4dm5fl4yimpgym5mnmni4"},
"version": "v0.4.23"
}
ipfs add foo.json
added QmduzMdye3WmYzQEyjJPQBDvUioRezbyCQddhMm4TdK9Hg foo.json
129 B / 129 B [==========================================================================] 100.00%
IPFSはコンテンツアドレッシングに基づいているため、コンテンツが変更された場合、CIDは確実に変更されますQmduzMdye3WmYzQEyjJPQBDvUioRezbyCQddhMm4TdK9Hg
IPNS を使用する
ipfs name publish QmduzMdye3WmYzQEyjJPQBDvUioRezbyCQddhMm4TdK9Hg
Published to QmcRTwzNNWkt3KzDn2ed8RgM9Y3iAfYX7ezoj7DQjk5NKU: /ipfs/QmduzMdye3WmYzQEyjJPQBDvUioRezbyCQddhMm4TdK9Hg
デフォルトでは、あなたの IPFS ID は公開、経由でのアクセス、およびゲートウェイ経由でのIPNS へ/ipns/<id>
のアクセスに使用されます。
コンテンツが更新されている限り、再公開するだけで、元の/ipns/
パス