mirror of
https://github.com/DeBrosOfficial/network.git
synced 2025-10-06 12:09:07 +00:00
feat: add configurable P2P port for node startup in Makefile and CLI flags
This commit is contained in:
parent
a59d0f1fd6
commit
355c1c66b9
20
Makefile
20
Makefile
@ -26,26 +26,26 @@ test:
|
|||||||
# Run bootstrap node explicitly
|
# Run bootstrap node explicitly
|
||||||
run-node:
|
run-node:
|
||||||
@echo "Starting BOOTSTRAP node (role=bootstrap)..."
|
@echo "Starting BOOTSTRAP node (role=bootstrap)..."
|
||||||
go run cmd/node/main.go -role bootstrap -data ./data/bootstrap -advertise localhost
|
go run cmd/node/main.go -role bootstrap -data ./data/bootstrap -advertise localhost -p2p-port $${P2P:-4001}
|
||||||
|
|
||||||
# Run second node (regular) - requires BOOTSTRAP multiaddr
|
# Run second node (regular) - requires BOOTSTRAP multiaddr
|
||||||
# Usage: make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5002 RAFT=7002
|
# Usage: make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5002 RAFT=7002 P2P=4002
|
||||||
run-node2:
|
run-node2:
|
||||||
@echo "Starting REGULAR node2 (role=node)..."
|
@echo "Starting REGULAR node2 (role=node)..."
|
||||||
@if [ -z "$(BOOTSTRAP)" ]; then echo "ERROR: Provide BOOTSTRAP multiaddr: make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> [HTTP=5002 RAFT=7002]"; exit 1; fi
|
@if [ -z "$(BOOTSTRAP)" ]; then echo "ERROR: Provide BOOTSTRAP multiaddr: make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> [HTTP=5002 RAFT=7002 P2P=4002]"; exit 1; fi
|
||||||
go run cmd/node/main.go -role node -id node2 -data ./data/node2 -bootstrap $(BOOTSTRAP) -rqlite-http-port $${HTTP:-5002} -rqlite-raft-port $${RAFT:-7002} -advertise $${ADVERTISE:-localhost}
|
go run cmd/node/main.go -role node -id node2 -data ./data/node2 -bootstrap $(BOOTSTRAP) -rqlite-http-port $${HTTP:-5002} -rqlite-raft-port $${RAFT:-7002} -p2p-port $${P2P:-4002} -advertise $${ADVERTISE:-localhost}
|
||||||
|
|
||||||
# Run third node (regular) - requires BOOTSTRAP multiaddr
|
# Run third node (regular) - requires BOOTSTRAP multiaddr
|
||||||
# Usage: make run-node3 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5003 RAFT=7003
|
# Usage: make run-node3 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5003 RAFT=7003 P2P=4003
|
||||||
run-node3:
|
run-node3:
|
||||||
@echo "Starting REGULAR node3 (role=node)..."
|
@echo "Starting REGULAR node3 (role=node)..."
|
||||||
@if [ -z "$(BOOTSTRAP)" ]; then echo "ERROR: Provide BOOTSTRAP multiaddr: make run-node3 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> [HTTP=5003 RAFT=7003]"; exit 1; fi
|
@if [ -z "$(BOOTSTRAP)" ]; then echo "ERROR: Provide BOOTSTRAP multiaddr: make run-node3 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> [HTTP=5003 RAFT=7003 P2P=4003]"; exit 1; fi
|
||||||
go run cmd/node/main.go -role node -id node3 -data ./data/node3 -bootstrap $(BOOTSTRAP) -rqlite-http-port $${HTTP:-5003} -rqlite-raft-port $${RAFT:-7003} -advertise $${ADVERTISE:-localhost}
|
go run cmd/node/main.go -role node -id node3 -data ./data/node3 -bootstrap $(BOOTSTRAP) -rqlite-http-port $${HTTP:-5003} -rqlite-raft-port $${RAFT:-7003} -p2p-port $${P2P:-4003} -advertise $${ADVERTISE:-localhost}
|
||||||
|
|
||||||
# Show how to run with flags
|
# Show how to run with flags
|
||||||
show-bootstrap:
|
show-bootstrap:
|
||||||
@echo "Provide bootstrap via flags, e.g.:"
|
@echo "Provide bootstrap via flags, e.g.:"
|
||||||
@echo " make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<PEER_ID> HTTP=5002 RAFT=7002"
|
@echo " make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<PEER_ID> HTTP=5002 RAFT=7002 P2P=4002"
|
||||||
|
|
||||||
# Run network CLI
|
# Run network CLI
|
||||||
run-cli:
|
run-cli:
|
||||||
@ -131,8 +131,8 @@ test-consensus: build
|
|||||||
dev-cluster:
|
dev-cluster:
|
||||||
@echo "To start a development cluster, run these commands in separate terminals:"
|
@echo "To start a development cluster, run these commands in separate terminals:"
|
||||||
@echo "1. make run-node # Start bootstrap node"
|
@echo "1. make run-node # Start bootstrap node"
|
||||||
@echo "2. make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5002 RAFT=7002"
|
@echo "2. make run-node2 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5002 RAFT=7002 P2P=4002"
|
||||||
@echo "3. make run-node3 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5003 RAFT=7003"
|
@echo "3. make run-node3 BOOTSTRAP=/ip4/127.0.0.1/tcp/4001/p2p/<ID> HTTP=5003 RAFT=7003 P2P=4003"
|
||||||
@echo "4. make run-example # Test basic functionality"
|
@echo "4. make run-example # Test basic functionality"
|
||||||
@echo "5. make cli-health # Check network health"
|
@echo "5. make cli-health # Check network health"
|
||||||
@echo "6. make cli-peers # List peers"
|
@echo "6. make cli-peers # List peers"
|
||||||
|
@ -25,6 +25,7 @@ func main() {
|
|||||||
nodeID = flag.String("id", "", "Node identifier (for running multiple local nodes)")
|
nodeID = flag.String("id", "", "Node identifier (for running multiple local nodes)")
|
||||||
bootstrap = flag.String("bootstrap", "", "Bootstrap peer address (for manual override)")
|
bootstrap = flag.String("bootstrap", "", "Bootstrap peer address (for manual override)")
|
||||||
role = flag.String("role", "auto", "Node role: auto|bootstrap|node (auto detects based on config)")
|
role = flag.String("role", "auto", "Node role: auto|bootstrap|node (auto detects based on config)")
|
||||||
|
p2pPort = flag.Int("p2p-port", 4001, "LibP2P listen port")
|
||||||
rqlHTTP = flag.Int("rqlite-http-port", 5001, "RQLite HTTP API port")
|
rqlHTTP = flag.Int("rqlite-http-port", 5001, "RQLite HTTP API port")
|
||||||
rqlRaft = flag.Int("rqlite-raft-port", 7001, "RQLite Raft port")
|
rqlRaft = flag.Int("rqlite-raft-port", 7001, "RQLite Raft port")
|
||||||
advertise = flag.String("advertise", "auto", "Advertise mode: auto|localhost|ip")
|
advertise = flag.String("advertise", "auto", "Advertise mode: auto|localhost|ip")
|
||||||
@ -62,8 +63,8 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// LibP2P uses port 4001, RQLite uses 5001 (HTTP) and 7001 (Raft)
|
// LibP2P uses configurable port (default 4001); RQLite uses 5001 (HTTP) and 7001 (Raft)
|
||||||
port := 4001
|
port := *p2pPort
|
||||||
|
|
||||||
// Create logger with appropriate component type
|
// Create logger with appropriate component type
|
||||||
var logger *logging.StandardLogger
|
var logger *logging.StandardLogger
|
||||||
|
Loading…
x
Reference in New Issue
Block a user