docs.waku.org/docs/run-node/run-docker.md
fryorcraken 0cb2be1c35
Re-organise the docs to have clear CTAs (#251)
* Split website in 4:

- build
- run node
- learn
- research

* only show pages of section in sidebar

* home button on each sidebar

* index.md for homepages

* Add video tutorials

* delete old getting-started

* rename to "Waku node"

* fix nwaku compose

* add to dict

* script revert research changes

* fix broken links

* move research index content

* move research folder under learn

* move research folder under learn: side bar and buttons

* remove pointless links
2025-10-03 15:54:25 +10:00

3.0 KiB

title hide_table_of_contents displayed_sidebar
Run Nwaku in a Docker Container true runNode

This guide provides detailed steps to build and run a nwaku node in a Docker container. If you prefer a pre-configured setup with a monitoring dashboard, see the Run Nwaku with Docker Compose guide.

Prerequisites

Ensure Docker is installed on your system using the appropriate instructions provided in the Docker documentation.

:::info 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. :::

Get Docker image

The Nwaku Docker images are available on the Docker Hub public registry under the wakuorg/nwaku repository. Please visit wakuorg/nwaku/tags for images of specific releases.

Build Docker image

You can also build the Docker image locally:

# Clone the repository
git clone --recurse-submodules https://github.com/waku-org/nwaku
cd nwaku

# Build docker image
make docker-image

Run Docker container

Run nwaku in a new Docker container:

docker run [OPTIONS] [IMAGE] [ARG...]

Run nwaku using the most typical configuration:

docker run -i -t -p 60000:60000 -p 9000:9000/udp wakuorg/nwaku:v0.32.0 \
  --dns-discovery=true \
  --dns-discovery-url=enrtree://AIRVQ5DDA4FFWLRBCHJWUWOO6X6S4ZTZ5B667LQ6AJU6PEYDLRD5O@sandbox.waku.nodes.status.im \
  --discv5-discovery=true \
  --nat=extip:[YOUR PUBLIC IP] # or, if you are behind a nat: --nat=any

To find your public IP, use:

dig TXT +short o-o.myaddr.l.google.com @ns1.google.com | awk -F'"' '{ print $2}'

For more detailed information about all possible configurations, please run

docker run -t wakuorg/nwaku:v0.32.0 --help

:::info Note that running a node in The Waku Network (--cluster-id=1) requires a special set of configurations and therefore, it is recommended to run in this case with docker compose :::

:::info We recommend using explicit port mappings (-p) when exposing ports accessible from outside the host (listening and discovery ports, API servers). :::

:::tip If you encounter issues running your node or require assistance with anything, please visit the - Visit the #help-desk channel on Discord. :::

:::tip Congratulations! You have successfully built and started a nwaku node in a Docker container. Have a look at the Node Configuration Examples guide to learn how to configure nwaku for different use cases. :::