我正在尝试使用docker设置2节点专用IPFS群集。为此,我正在使用ipfs/ipfs-cluster:latest图像。
我的docker-compose文件如下所示:
version: '3'
services:
peer-1:
image: ipfs/ipfs-cluster:latest
ports:
- 8080:8080
- 4001:4001
- 5001:5001
volumes:
- ./cluster/peer1/config:/data/ipfs-cluster
peer-2:
image: ipfs/ipfs-cluster:latest
ports:
- 8081:8080
- 4002:4001
- 5002:5001
volumes:
- ./cluster/peer2/config:/data/ipfs-cluster
Run Code Online (Sandbox Code Playgroud)
启动容器时出现以下错误
ERROR ipfshttp: error posting to IPFS: Post http://127.0.0.1:5001/api/v0/repo/stat?size-only=true: dial tcp 127.0.0.1:5001: connect: connection refused ipfshttp.go:745
Run Code Online (Sandbox Code Playgroud)
是否有关于如何在docker上设置IPFS集群的适当文档。该文档缺少许多细节。
谢谢。
我弄清楚了如何在 docker 环境中运行多节点 IPFS 集群。当前版本 0.4.17中ipfs/ipfs-cluster不运行 ipfs Peer ie 。ipfs/go-ipfs我们需要单独运行它。
因此,现在为了在 docker 环境中运行多节点(本例中为 2 个节点)IPSF 集群,我们需要运行 2 个 IPFS 对等容器和与每个对等点对应的 2 个 IPFS 集群容器 1。
所以你的 docker-compose 文件将如下所示:
version: '3'
networks:
vpcbr:
driver: bridge
ipam:
config:
- subnet: 10.5.0.0/16
services:
ipfs0:
container_name: ipfs0
image: ipfs/go-ipfs
ports:
- "4001:4001"
- "5001:5001"
- "8081:8080"
volumes:
- ./var/ipfs0-docker-data:/data/ipfs/
- ./var/ipfs0-docker-staging:/export
networks:
vpcbr:
ipv4_address: 10.5.0.5
ipfs1:
container_name: ipfs1
image: ipfs/go-ipfs
ports:
- "4101:4001"
- "5101:5001"
- "8181:8080"
volumes:
- ./var/ipfs1-docker-data:/data/ipfs/
- ./var/ipfs1-docker-staging:/export
networks:
vpcbr:
ipv4_address: 10.5.0.7
ipfs-cluster0:
container_name: ipfs-cluster0
image: ipfs/ipfs-cluster
depends_on:
- ipfs0
environment:
CLUSTER_SECRET: 1aebe6d1ff52d96241e00d1abbd1be0743e3ccd0e3f8a05e3c8dd2bbbddb7b93
IPFS_API: /ip4/10.5.0.5/tcp/5001
ports:
- "9094:9094"
- "9095:9095"
- "9096:9096"
volumes:
- ./var/ipfs-cluster0:/data/ipfs-cluster/
networks:
vpcbr:
ipv4_address: 10.5.0.6
ipfs-cluster1:
container_name: ipfs-cluster1
image: ipfs/ipfs-cluster
depends_on:
- ipfs1
- ipfs-cluster0
environment:
CLUSTER_SECRET: 1aebe6d1ff52d96241e00d1abbd1be0743e3ccd0e3f8a05e3c8dd2bbbddb7b93
IPFS_API: /ip4/10.5.0.7/tcp/5001
ports:
- "9194:9094"
- "9195:9095"
- "9196:9096"
volumes:
- ./var/ipfs-cluster1:/data/ipfs-cluster/
networks:
vpcbr:
ipv4_address: 10.5.0.8
Run Code Online (Sandbox Code Playgroud)
这将旋转 2 个对等 IPFS 集群,我们可以使用任何对等点存储和检索文件。
这里的问题是我们需要向 ipfs-cluster 提供 IPFS_API 作为环境变量,以便 ipfs-cluster 知道其对应的对等点。对于两个 ipfs-cluster,我们需要具有相同的 CLUSTER_SECRET。
| 归档时间: |
|
| 查看次数: |
1077 次 |
| 最近记录: |