差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

下次修改
前次修改
tech:ipfs-docker [2022/09/04 22:43] – 建立 jonathantech:ipfs-docker [2022/09/04 23:43] (目前版本) – [IPFS 在 Docker 環境運行] jonathan
行 1: 行 1:
-====== [draft]ipfs 在 Docker 環境運行 ======+====== IPFS 在 Docker 環境運行 ======
   * 使用最新版的 image - ipfs/kubo:latest   * 使用最新版的 image - ipfs/kubo:latest
   * 相關環境配置    * 相關環境配置 
行 11: 行 11:
 docker run -d --name ipfs_host -v $ipfs_staging:/export -v $ipfs_data:/data/ipfs -p 4001:4001 -p 4001:4001/udp -p 127.0.0.1:8080:8080 -p 127.0.0.1:5001:5001 ipfs/kubo:latest docker run -d --name ipfs_host -v $ipfs_staging:/export -v $ipfs_data:/data/ipfs -p 4001:4001 -p 4001:4001/udp -p 127.0.0.1:8080:8080 -p 127.0.0.1:5001:5001 ipfs/kubo:latest
 </cli> </cli>
 +    * 查看 ipfs 運行紀錄<cli>docker logs -f ipfs_host</cli>看到以下的訊息表示啟動完成<cli>
 +:
 +:
 +API server listening on /ip4/0.0.0.0/tcp/5001
 +WebUI: http://0.0.0.0:5001/webui
 +Gateway (readonly) server listening on /ip4/0.0.0.0/tcp/8080
 +Daemon is ready
 +</cli>
 +    * 執行 ipfs 命令語法如下: <cli>docker exec ipfs_host ipfs <args...></cli> Exp. 
 +    * 查看連上 ipfs 網路的節點清單 <cli>docker exec ipfs_host ipfs swarm peers</cli>
 +    * 將一個檔案上傳至 ipfs 網路 Exp. /home/jonathan/test.txt <cli>
 +cp -r /home/jonathan/test.txt $ipfs_staging
 +docker exec ipfs_host ipfs add -r /export/test.txt
 +</cli>如果成功就會如下訊息<cli>
 +$ docker exec ipfs_host ipfs add -r /export/test.txt
 +added QmSz21eVFGpCn34JdVwRvaLgajKkMv95Wj2KRKu1u1ugQC test.txt
 + 16 B / 16 B  100.00%
 +</cli>
 +    * 在使用 IPFS Browser 驗證<cli>curl https://api.ipfsbrowser.com/ipfs/get.php?hash=QmSz21eVFGpCn34JdVwRvaLgajKkMv95Wj2KRKu1u1ugQC</cli>正常會看到 test.txt 的內容<cli>20220904-231500</cli> 第一次外部讀取有可能會花一點時間, 主要是因為其他節點找這hash檔案並由本地 ipfs 節點複製出去其他節點的時間, 所以愈多節點有這 hash 速度就會愈快
 +    * 停止 ipfs 的 docker 服務<cli>docker stop ipfs_host</cli>
 +    * 再次啟動 ipfs 的 docker 服務<cli>docker start ipfs_host</cli>
  
 ===== 參考網址 ===== ===== 參考網址 =====
  • tech/ipfs-docker.1662302629.txt.gz
  • 上一次變更: 2022/09/04 22:43
  • jonathan