你可以选择其中一种方式 , 然后你的IPFS节点会初始化并提供像 `PeerID(节点ID)` 和回路中继地址这样的信息 。记住 , 你想将这个信息编辑到聊天客户端里 , 这样可以使用自己的节点 (参考 WebRTC-Star 使用(#usage) and p2p-circuit 使用(#usage-2) 以获得示例 , 或者编辑 index.html文件并将我的节点的多个地址设定(multiaddresses)换成你自己的 。
使用certbot证书机器人
确保80端口没有被占用 , 然后对比下面的检查清单 , 接着运行下面的命令:

文章插图
不使用certbot证书机器人 (禁用SSL证书)
如果你使用这个选项 , 容器不会处理SSL证书 , 你需要将9091端口反向代理到9090端口(SSL) , 且4011端口反向代理到4430端口(SSL) 。

文章插图
检查清单
- 将DOMAIN.COM替换成你的域名
- 确保域名被正确指向到容器运行的机器上(子域名也能正常工作)
运行容器
在配置好后 , 运行容器是很简单的 。最起码要确保4430端口和9090端口被转发 。

文章插图
现在你应该将此机器作用WebRTC-Star节点或p2p-circuit节点 。
WebRTC-Star
我们可以使用 WebRTC-Star(https://github.com/libp2p/js-libp2p-webrtc-star)节点来帮助发现其他可以直接通过浏览器对浏览器连接的节点 。我觉得可以将此看成跟STUN(https://en.wikipedia.org/wiki/STUN)类似 , 如果你已经熟悉了这个概念的话 。实际上 , 每一个连接节点将会被赋予一个WebRTC-Star multiaddress(https://docs.libp2p.io/concepts/addressing/) 地址 , 这样其他节点可以直接发现和连接到你的浏览器 。这意味着如果你与其他star节点连接上了 , 当star节点下线时 , 你依然保持连接 。
使用
连接到一个star节点是很简单的:

文章插图
设置
请注意这个例子使用了我自己的star节点 。不过 , 这些节点并不一定可以在任何时候都连接上 。当前重要的事情是要么找一个可靠的star节点 , 要么搭建自己的 。你可以很容易地根据这里(https://github.com/libp2p/js-libp2p-webrtc-star#rendezvous-server-aka-signaling-server)的指示来以原生的方式搭建自己的节点 , 也可以根据这里(https://github.com/libp2p/js-libp2p-webrtc-star/blob/master/DEPLOYMENT.md)的信息来使用Docker容器(包含为SSL功能配置的Nginx) 。如果你选择原生的方式 , 我们会在这篇文章的后面介绍Nginx反向代理过程和SSL证书取回的方法 。
这是一个简洁\高效的P2P通讯方式 。不过有时候NAT网络会带来障碍 。我们使用p2p-circuit(https://docs.libp2p.io/concepts/circuit-relay/) 来绕过它 。
? p2p-circuit
使用 p2p-circuit对在NAT网络(或VPN等)后面的节点是很有用的 。我发现p2p-circuit的中继与TURN(https://en.wikipedia.org/wiki/Traversal_Using_Relays_around_NAT)是很相似的 , 如果你对那概念熟悉的话 , 应该就很容易理解了 。
使用
当 p2p-circuit的所有服务就绪后 , 可以用几种方式连接到节点 。首先 , 在启动时 _只_ 连接到我们的节点:

文章插图
或者可以之后添加我们自己的节点 , 然后手动初始化连接:

文章插图
如果你想不复制例子并实现自己的客户端 , 那确保你与公告频道(announce channel)也在进行通讯 , 这在公告(#advertising) 这里描述了 。在聊天演示应用中 , 相关的代码简化如下:

文章插图
设置
就如star节点 , 你要认识到这篇文章里列出的节点是在任何时候都可能下线的 , 所以架设自己的节点是很重要的 。
推荐阅读
- 长山群岛属于哪个省 长岛在哪里哪个城市
- 乳胶枕可以在太阳下晒吗 乳胶能不能在太阳底下晒
- VS Code 安装和设置Visual Studio Code的简要教程
- 小龙虾能冷冻保存吗 大龙虾可以放在冰箱里冷藏吗
- 白茶在市场上多少钱斤,白茶市场价格多少钱斤
- Oracle如何创建只读用户
- 七岁男孩的生殖器标准
- 婴儿性格什么时候形成
- 儿童马尾辫的各种扎法是什么
- 屁股沟烂了有血丝怎么治
