cluster/services/ipfs: peer with other nodes
This commit is contained in:
parent
5443c97e03
commit
f0aeeb78a1
2 changed files with 23 additions and 2 deletions
|
@ -1,6 +1,24 @@
|
|||
{ tools, ... }:
|
||||
{ config, lib, tools, ... }:
|
||||
|
||||
{
|
||||
hostLinks = lib.genAttrs config.services.ipfs.nodes.node (name: let
|
||||
host = config.vars.hosts.${name};
|
||||
intf = host.interfaces.primary;
|
||||
self = config.hostLinks.${name}.ipfs;
|
||||
in {
|
||||
ipfs = {
|
||||
ipv4 = if intf ? addrPublic then intf.addrPublic else intf.addr;
|
||||
port = 4001;
|
||||
extra = {
|
||||
peerId = {
|
||||
VEGAS = "Qmd7QHZU8UjfYdwmjmq1SBh9pvER9AwHpfwQvnvNo3HBBo";
|
||||
prophet = "12D3KooWQWsHPUUeFhe4b6pyCaD1hBoj8j6Z7S7kTznRTh1p1eVt";
|
||||
}.${name};
|
||||
multiaddrTcp = "/ip4/${self.ipv4}/tcp/${self.portStr}/p2p/${self.extra.peerId}";
|
||||
multiaddrQuic = "/ip4/${self.ipv4}/udp/${self.portStr}/quic/p2p/${self.extra.peerId}";
|
||||
};
|
||||
};
|
||||
});
|
||||
services.ipfs = {
|
||||
nodes = {
|
||||
node = [ "VEGAS" "prophet" ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ aspect, config, inputs, lib, hosts, pkgs, tools, ... }:
|
||||
{ aspect, cluster, config, inputs, lib, hosts, pkgs, tools, ... }:
|
||||
let
|
||||
inherit (tools.meta) domain;
|
||||
cfg = config.services.ipfs;
|
||||
|
@ -56,6 +56,9 @@ in
|
|||
];
|
||||
Access-Control-Allow-Methods = [ "PUT" "POST" ];
|
||||
};
|
||||
Peering.Peers = map
|
||||
(name: cluster.config.hostLinks.${name}.ipfs.extra.multiaddrQuic)
|
||||
cluster.config.services.ipfs.otherNodes.node;
|
||||
Gateway = {
|
||||
Writable = false;
|
||||
APICommands = [];
|
||||
|
|
Loading…
Reference in a new issue