You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Nwaku is a lightweight and robust Nim client for running a Waku node, equipped with tools to monitor and maintain a running node. Nwaku is highly configurable, enabling operators to select the [protocols](/learn/concepts/protocols) they want to support based on their needs, motivations, and available resources.
8
8
9
-
## Video Tutorials
9
+
## Video Tutorial
10
10
11
11
<divclass="video-container">
12
12
<iframeclass="yt-video"src="https://www.youtube.com/embed/fs0ynLk4z0I"title="How to run a Waku node using Nwaku Compose"frameborder="0"allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"allowfullscreen></iframe>
13
13
</div>
14
14
15
-
This guide provides detailed steps to download, build, configure, and connect a `nwaku` node to the Waku Network. It also includes interacting with the node and finding its addresses.
15
+
## Quick Start with Docker Compose (Recommended)
16
16
17
-
:::info
18
-
We recommend running a `nwaku` node with at least 2GB of RAM, especially if `WSS` is enabled. If running just a `Relay` node, 0.5GB of RAM is sufficient.
19
-
:::
20
-
21
-
## Get the node binary
22
-
23
-
To run a node, you must have the `nwaku` binary. Nwaku provides multiple options for running a node:
24
-
25
-
#### Run nwaku in Docker (recommended)
26
-
27
-
We recommend [using Docker Compose](/guides/nwaku/run-docker-compose) to run a node because it's the simplest and fastest way to configure and run one:
17
+
The easiest way to run a Waku node is using [Docker Compose](/run-node/run-docker-compose). This setup automatically configures:
| Docker Compose | Run a `nwaku` node with Docker Compose |[Run Nwaku with Docker Compose](/guides/nwaku/run-docker-compose)|
32
-
| Docker Container | Run a `nwaku` node in a Docker Container |[Run Nwaku in a Docker Container](/guides/nwaku/run-docker)|
19
+
- A `nwaku` node with [Relay](/learn/concepts/protocols#relay), [Store](/learn/concepts/protocols#store), and [RLN](/learn/concepts/protocols#rln-relay) protocols
20
+
- A simple web interface to send and receive messages
| Build from Source | Build the node from the [nwaku source code](https://github.com/waku-org/nwaku)|[Build Nwaku from Source](/guides/nwaku/build-source)|
46
-
47
-
:::tip
48
-
You can run the `nwaku` binaries and Docker images on cloud service providers like [Google Cloud](https://cloud.google.com/), [Microsoft Azure](https://azure.microsoft.com/), [Amazon Web Services](https://aws.amazon.com/), and [DigitalOcean](https://www.digitalocean.com/).
29
+
:::info System Requirements
30
+
We recommend at least 2GB of RAM, especially if WSS is enabled. For a Relay-only node, 0.5GB of RAM is sufficient.
49
31
:::
50
32
51
-
## Run the node
52
-
53
-
Once you have gotten the `nwaku` binary, run it using the [default configuration](/guides/nwaku/config-methods#default-configuration-values):
To learn how to customise the configuration of a `nwaku` node, have a look at the [Node Configuration Methods](/guides/nwaku/config-methods) and [Node Configuration Examples](/guides/nwaku/configure-nwaku) guides.
65
-
:::
66
-
67
-
## Bootstrap the node
40
+
# Configure your node
41
+
cp .env.example .env
42
+
# Edit .env with your settings
68
43
69
-
To join the Waku Network, nodes must [bootstrap](/learn/glossary#bootstrapping) for an entry point before discovering more peers. Nwaku provides multiple [peer discovery](/learn/concepts/peer-discovery) mechanisms:
| Static Peers | Configure the bootstrap nodes that `nwaku` should establish connections upon startup |[Configure Static Peers](/guides/nwaku/configure-discovery#configure-static-peers)|
74
-
| DNS Discovery | Enable `nwaku` to bootstrap nodes using the [DNS Discovery](/learn/concepts/dns-discovery) mechanism |[Configure DNS Discovery](/guides/nwaku/configure-discovery#configure-dns-discovery)|
75
-
| Discv5 | Enable `nwaku` to discover peers using the [Discv5](/learn/concepts/discv5) mechanism |[Configure Discv5](/guides/nwaku/configure-discovery#configure-discv5)|
76
-
| Peer Exchange | Enable [Peer Exchange](/learn/concepts/peer-exchange) protocol for light nodes to request peers from your `nwaku` node |[Configure Peer Exchange](/guides/nwaku/configure-discovery#configure-peer-exchange)|
77
-
78
-
:::tip
79
-
We suggest [configuring WebSocket transport](/guides/nwaku/configure-nwaku#configure-websocket-transport) for your node to enable support and serving of browser peers using [@waku/sdk](/guides/js-waku/).
80
-
:::
81
-
82
-
## Interact with the node
83
-
84
-
You can interact with a running `nwaku` node through the [REST API](https://waku-org.github.io/waku-rest-api/), such as querying the node information using the [Get node info](https://waku-org.github.io/waku-rest-api/#get-/debug/v1/info) endpoint:
For detailed setup instructions, see [Run Nwaku with Docker Compose](/run-node/run-docker-compose).
113
49
114
-
:::info
115
-
The `listenAddresses` field stores the node's listening addresses, while the `enrUri` field stores the discoverable `ENR` URI for peer discovery.
116
-
:::
50
+
## Alternative Installation Methods
117
51
118
-
## Check the node health status
52
+
While Docker Compose is recommended, you can also:
119
53
120
-
You can check the health status of the node by calling the [Get node health status](https://waku-org.github.io/waku-rest-api/#get-/health) endpoint of the [REST API](https://waku-org.github.io/waku-rest-api/):
54
+
-**[Run in Docker Container](/run-node/run-docker)** - For custom Docker deployments
55
+
-**[Build from Source](/run-node/build-source)** - Compile the latest nwaku code
56
+
-**[Download Binary](https://github.com/waku-org/nwaku/tags)** - Use precompiled releases
121
57
122
-
<Tabs>
123
-
<TabItemvalue="request"label="Request">
58
+
## Node Configuration
124
59
125
-
```shell
126
-
curl --location 'http://127.0.0.1:8645/health' \
127
-
--header 'Accept: text/plain'
128
-
```
60
+
Once your node is running, you can:
129
61
130
-
</TabItem>
131
-
<TabItemvalue="response"label="Response">
62
+
-**[Configure Discovery](/run-node/configure-discovery)** - Set up peer discovery mechanisms
63
+
-**[Configure Your Node](/run-node/configure-nwaku)** - Customize protocols and settings
64
+
-**[Find Node Addresses](/run-node/find-node-address)** - Locate your node's network addresses
132
65
133
-
```txt
134
-
Node is healthy
135
-
```
66
+
## Monitoring and Maintenance
136
67
137
-
</TabItem>
138
-
</Tabs>
68
+
- Access the Grafana dashboard at `http://localhost:3000` (if using Docker Compose)
69
+
- Use the [REST API](https://waku-org.github.io/waku-rest-api/) to interact with your node
70
+
- Check node health at `http://localhost:8645/health`
139
71
140
72
:::tip
141
-
If you encounter issues running your node or require assistance with anything, please visit the [#node-help channel](https://discord.com/channels/1110799176264056863/1216748184592711691)on our Discord.
73
+
Download the [Waku Node Operator Cheatsheet](/Waku-NodeOperator.pdf) for quick reference on operating your node.
142
74
:::
143
75
144
-
:::tip Congratulations!
145
-
You have successfully started, configured, and connected a `nwaku` node to the Waku Network. Have a look at the [Node Configuration Examples](/guides/nwaku/configure-nwaku) guide to learn how to configure `nwaku` for different use cases.
146
-
:::
76
+
## Get Help
77
+
78
+
If you encounter issues or need assistance:
79
+
80
+
- Visit the #help-desk channel on [Discord](https://discord.waku.org/)
81
+
- Check the [FAQ](/run-node/faq) for common questions
82
+
- Review the [upgrade instructions](/run-node/upgrade-instructions) when updating your node
-[Wallet with Sepolia Ethereum](https://github.com/waku-org/nwaku/blob/master/docs/tutorial/pre-requisites-of-running-on-chain-spam-protected-chat2.md#2-obtain-sepolia-eth-from-faucet) (~0.6 Sepolia ETH)
29
-
- A password to protect your RLN membership
27
+
-**Linea Sepolia RPC endpoint**: You can get a free endpoint from [Infura](https://www.infura.io/) or any other Linea Sepolia RPC provider.
30
28
31
29
:::info
32
30
We recommend running a `nwaku` node with at least 2GB of RAM, especially if `WSS` is enabled. If running just a `Relay` node, 0.5GB of RAM is sufficient.
@@ -52,20 +50,6 @@ ${EDITOR} .env
52
50
Ensure that you do **NOT** include any secrets in the `.env.example` file, as it could accidentally be shared in your Git repository.
53
51
:::
54
52
55
-
## Register for RLN membership
56
-
57
-
The RLN membership is your access key to The Waku Network. Its registration is done on-chain, allowing your `nwaku` node to send messages decentralised and privately, respecting some rate limits. Other peers won't relay messages that exceed the rate limit.
58
-
59
-
This command registers your membership and saves it in the `keystore/keystore.json` file. You should have Docker running at this step:
60
-
61
-
```shell
62
-
./register_rln.sh
63
-
```
64
-
65
-
:::tip
66
-
If you only want to relay traffic without sending messages to the network, you don't need to register for RLN membership.
67
-
:::
68
-
69
53
## Run the node
70
54
71
55
Launch all the processes: `nwaku` node, database for storing messages, and Grafana for metrics with the following command. Your RLN membership is loaded into `nwaku` under the hood:
If you encounter issues running your node or require assistance with anything, please visit the [#node-help channel](https://discord.com/channels/1110799176264056863/1216748184592711691) on our Discord.
97
+
If you encounter issues running your node or require assistance with anything, please visit the - Visit the #help-desk channel on [Discord](https://discord.waku.org/).
Copy file name to clipboardExpand all lines: docs/run-node/run-docker.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -74,7 +74,7 @@ We recommend using explicit port mappings (`-p`) when exposing ports accessible
74
74
:::
75
75
76
76
:::tip
77
-
If you encounter issues running your node or require assistance with anything, please visit the [#node-help channel](https://discord.com/channels/1110799176264056863/1216748184592711691) on our Discord.
77
+
If you encounter issues running your node or require assistance with anything, please visit the - Visit the #help-desk channel on [Discord](https://discord.waku.org/).
0 commit comments