diff --git a/cmd/indra/main.go b/cmd/indra/main.go index dd3b10f8..0f51f7af 100644 --- a/cmd/indra/main.go +++ b/cmd/indra/main.go @@ -118,7 +118,7 @@ var commands = &cmds.Command{ return err } - if srv.Serve(); check(err) { + if err = srv.Serve(); check(err) { return err } diff --git a/docker/sim/docker-compose-dev.yml b/docker/sim/docker-compose-dev.yml index 5d901f5f..f73318bd 100644 --- a/docker/sim/docker-compose-dev.yml +++ b/docker/sim/docker-compose-dev.yml @@ -17,6 +17,8 @@ services: environment: INDRA_SERVE_KEY: "66T7j5JnhsjDTqVvV8zEM2rTUobu66tocizfqArVEnP1" INDRA_SERVE_LISTEN: "/ip4/0.0.0.0/tcp/62134,/ip6/::/tcp/62134" + command: + - "serve" seed1: sysctls: - "net.ipv6.conf.all.disable_ipv6=0" @@ -36,6 +38,8 @@ services: environment: INDRA_SERVE_KEY: "66T7j5JnhsjDTqVvV8zEM2rTUobu66tocizfqArVEnP2" INDRA_SERVE_LISTEN: "/ip4/0.0.0.0/tcp/62134,/ip6/::/tcp/62134" + command: + - "serve" seed2: sysctls: - "net.ipv6.conf.all.disable_ipv6=0" @@ -56,6 +60,8 @@ services: environment: INDRA_SERVE_KEY: "66T7j5JnhsjDTqVvV8zEM2rTUobu66tocizfqArVEnP3" INDRA_SERVE_LISTEN: "/ip4/0.0.0.0/tcp/62134,/ip6/::/tcp/62134" + command: + - "serve" peer0: sysctls: - "net.ipv6.conf.all.disable_ipv6=0" @@ -76,6 +82,8 @@ services: environment: #INDRA_SERVE_SEED: "/dns4/seed0/tcp/62134/p2p/16Uiu2HAm2LgowPNBM47dR6gSJmEeQaqCZ6u4WPhTCSWkxyNrfAxo" INDRA_SERVE_LISTEN: "/ip4/0.0.0.0/tcp/62134,/ip6/::/tcp/62134" + command: + - "serve" peer1: sysctls: - "net.ipv6.conf.all.disable_ipv6=0" @@ -96,6 +104,8 @@ services: environment: #INDRA_SERVE_SEED: "/dns4/seed0/tcp/62134/p2p/16Uiu2HAm2LgowPNBM47dR6gSJmEeQaqCZ6u4WPhTCSWkxyNrfAxo" INDRA_SERVE_LISTEN: "/ip4/0.0.0.0/tcp/62134,/ip6/::/tcp/62134" + command: + - "serve" peer2: sysctls: - "net.ipv6.conf.all.disable_ipv6=0" @@ -116,6 +126,8 @@ services: environment: #INDRA_SERVE_SEED: "/dns4/seed0/tcp/62134/p2p/16Uiu2HAm2LgowPNBM47dR6gSJmEeQaqCZ6u4WPhTCSWkxyNrfAxo" INDRA_SERVE_LISTEN: "/ip4/127.0.0.1/tcp/62134,/ip6/::1/tcp/62134" + command: + - "serve" volumes: seed0_gopath: seed1_gopath: diff --git a/docker/sim/run.sh b/docker/sim/run.sh index 90aa4874..f31749a6 100755 --- a/docker/sim/run.sh +++ b/docker/sim/run.sh @@ -2,4 +2,4 @@ go mod tidy -IPFS_LOGGING=info go run ./cmd/indra/. serve \ No newline at end of file +IPFS_LOGGING=info go run ./cmd/indra/. $@ \ No newline at end of file diff --git a/pkg/p2p/seed/bootstrap.go b/pkg/p2p/seed/bootstrap.go index 9386e1f0..b7ac477d 100644 --- a/pkg/p2p/seed/bootstrap.go +++ b/pkg/p2p/seed/bootstrap.go @@ -3,6 +3,7 @@ package seed import ( "context" "errors" + dht "github.com/libp2p/go-libp2p-kad-dht" "sync" "time" @@ -32,6 +33,8 @@ var ( c context.Context h host.Host = nil + kadht *dht.IpfsDHT + failedChan = make(chan error) ) @@ -80,6 +83,14 @@ func Bootstrap(ctx context.Context, host host.Host, seeds []multiaddr.Multiaddr) c = ctx h = host + if kadht, err = dht.New(ctx, h); check(err) { + return + } + + if err = kadht.Bootstrap(ctx); check(err) { + return + } + log.I.Ln("using seeds:") var peerInfo *peer.AddrInfo