Skip to content

Commit acb1d5e

Browse files
doc: plume node (#1383)
Co-authored-by: kowshikvajrala <[email protected]>
1 parent b5fb89e commit acb1d5e

File tree

2 files changed

+199
-0
lines changed

2 files changed

+199
-0
lines changed
Lines changed: 198 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,198 @@
1+
# Plume
2+
3+
import { Callout } from "/src/components/callout";
4+
5+
Set up your Plume Mainnet or Testnet node
6+
7+
## Prerequisites
8+
9+
- [Setup your Axelar validator](/validator/setup/overview/)
10+
- [Minimum hardware requirements](https://docs.plume.org/plume/developers/how-to-guides/how-to-run-a-node#hardware-requirements):
11+
- Memory: 16 GB RAM
12+
- CPU: 4 CPU cores
13+
- Disk: NVMe SSD storage
14+
- [Docker Engine](https://docs.docker.com/engine/install/)
15+
- [Docker Compose](https://docs.docker.com/compose/install/)
16+
- [Official Documentation](https://docs.plume.org/plume/developers/how-to-guides/how-to-run-a-node)
17+
18+
## Running a Plume Node
19+
20+
To run a plume node, you'll have to:
21+
22+
1. [Run a Celestia DA Server](/validator/external-chains/plume/#1-run-a-celestia-da-server)
23+
24+
2. [Run a Plume Nitro Node](/validator/external-chains/plume/#2-run-a-plume-nitro-node)
25+
26+
## 1. Run a Celestia DA Server
27+
28+
Create `celestia-server.yaml` file with the below config to run the Celestia DAS server.
29+
30+
<tabs>
31+
<tab-item title="Mainnet">
32+
```yaml
33+
TBA
34+
```
35+
</tab-item>
36+
<tab-item title="Testnet">
37+
```yaml
38+
services:
39+
celestia-server-mocha:
40+
image: ghcr.io/celestiaorg/nitro-das-celestia:v0.4.3
41+
container_name: celestia-server-mocha
42+
entrypoint:
43+
- /bin/celestia-server
44+
- --celestia.namespace-id
45+
- "0cd3a18eab940678" # Make sure to use 0cd3a18eab940678 as the Namespace ID for Plume Testnet.
46+
- --rpc-addr
47+
- "0.0.0.0"
48+
- --rpc-port
49+
- "26657"
50+
- --celestia.rpc
51+
- "CELESTIA_MOCHA_ENDPOINT" # Replace with your Celestia Mocha RPC URL
52+
- --log-level
53+
- "DEBUG"
54+
ports:
55+
- "1317:1317"
56+
- "9090:9090"
57+
- "26657:26657" # Celestia RPC Port
58+
- "1095:1095"
59+
- "8080:8080"
60+
```
61+
</tab-item>
62+
</tabs>
63+
64+
### Start Celestia DA Server
65+
66+
```bash
67+
docker compose -f celestia-server.yaml up -d
68+
```
69+
70+
### Check Celestia DA Logs
71+
72+
<tabs>
73+
<tab-item title="Mainnet">
74+
```bash
75+
TBA
76+
```
77+
</tab-item>
78+
<tab-item title="Testnet">
79+
```bash
80+
docker logs -f celestia-server-mocha
81+
```
82+
</tab-item>
83+
</tabs>
84+
85+
## 2. Run a Plume Nitro Node
86+
87+
Create `plume.yaml` file with the below config to run the Plume node.
88+
89+
<tabs>
90+
<tab-item title="Mainnet">
91+
```yaml
92+
TBA
93+
```
94+
</tab-item>
95+
<tab-item title="Testnet">
96+
```yaml
97+
services:
98+
plume-testnet:
99+
image: ghcr.io/conduitxyz/plume-nitro:v3.3.2-celestia
100+
container_name: plume-testnet
101+
restart: unless-stopped
102+
ports:
103+
- "8547:8547"
104+
- "6070:6070"
105+
command:
106+
- --chain.id=98867
107+
- --chain.name=conduit-orbit-deployer
108+
- --http.addr=0.0.0.0
109+
- --http.corsdomain=*
110+
- --http.vhosts=*
111+
- --ws.expose-all
112+
- --ws.rpcprefix=/
113+
- --ws.port=8547
114+
- --ws.addr=0.0.0.0
115+
- --ws.origins=*
116+
- --http.api=net,web3,eth,txpool,debug,admin,arb,arbdebug,arbtrace
117+
- --ws.api=net,web3,eth,txpool,debug
118+
- --chain.info-json=[{"chain-id":98867,"parent-chain-id":11155111,"chain-name":"conduit-orbit-deployer","chain-config":{"chainId":98867,"homesteadBlock":0,"daoForkBlock":null,"daoForkSupport":true,"eip150Block":0,"eip150Hash":"0x0000000000000000000000000000000000000000000000000000000000000000","eip155Block":0,"eip158Block":0,"byzantiumBlock":0,"constantinopleBlock":0,"petersburgBlock":0,"istanbulBlock":0,"muirGlacierBlock":0,"berlinBlock":0,"londonBlock":0,"clique":{"period":0,"epoch":0},"arbitrum":{"EnableArbOS":true,"AllowDebugPrecompiles":false,"DataAvailabilityCommittee":true,"InitialArbOSVersion":32,"InitialChainOwner":"0x09a24DD120676EA4034cD47BfA4432a6a87A8a42","GenesisBlockNum":0}},"rollup":{"bridge":"0xC55b89c17d7a35877FA4ea818fea2a70d5765f1c","inbox":"0xb48cdff890199f5De31514024B95F8664F8Af222","sequencer-inbox":"0xbCa991f1831bE1F1E7e5576d5F84A645e70F3E4d","rollup":"0x76268c4a75D1bE588356569acbfE03366d9eDCbD","validator-utils":"0x9d502DD38E6E7FBdd3b7e964345d544ec37f1D72","validator-wallet-creator":"0x684A827456373a0C0379B1C82BA31Ee5E4F88F62","deployed-at":7889627}}]
119+
- --node.celestia-cfg.enable=true
120+
- --node.celestia-cfg.url=http://celestia-server-mocha:26657
121+
- --node.data-availability.enable=true
122+
- --node.data-availability.rest-aggregator.enable=true
123+
- --node.data-availability.rest-aggregator.urls=https://das-plume-testnet-1.t.conduit.xyz
124+
- --execution.forwarding-target=https://testnet-rpc.plume.org
125+
- --execution.caching.archive
126+
- --parent-chain.connection.url=<ETH_SEPOLIA_RPC_URL> # Replace with execution layer client like Geth, Erigon, Nethermind, or Reth rpc url
127+
- --parent-chain.blob-client.beacon-url=<ETH_SEPOLIA_BEACON_RPC_URL> # Replace with consensus layer client like Lighthouse, Prysm, Nimbus, or Teku rpc url
128+
- --node.staker.enable=false
129+
- --node.feed.input.url=wss://relay-plume-testnet-1.t.conduit.xyz
130+
- --node.sequencer=false
131+
- --execution.rpc.tx-fee-cap=100
132+
- --execution.rpc.gas-cap=500000000
133+
- --metrics
134+
- --metrics-server.addr=0.0.0.0
135+
- --metrics-server.port=6070
136+
- --metrics-server.update-interval=5s
137+
```
138+
</tab-item>
139+
</tabs>
140+
141+
### Start Plume Nitro Node
142+
143+
```bash
144+
docker-compose -f plume.yaml up -d
145+
```
146+
147+
### Check Plume Nitro Node Logs
148+
149+
<tabs>
150+
<tab-item title="Mainnet">
151+
```bash
152+
TBA
153+
```
154+
</tab-item>
155+
<tab-item title="Testnet">
156+
```bash
157+
docker logs -f plume-testnet
158+
```
159+
</tab-item>
160+
</tabs>
161+
162+
After a few minutes, you should see lines that look like this. This means your node has started syncing with the network and is receiving blocks.
163+
164+
```bash
165+
INFO [06-02|08:03:03.483] InboxTracker sequencerBatchCount=3 messageCount=15 l1Block=7,900,124 l1Timestamp=2025-03-14T09:59:00+0000
166+
INFO [06-02|08:03:03.496] created block l2Block=14 l2BlockHash=8405d0..0bfae6
167+
INFO [06-02|08:03:04.485] InboxTracker sequencerBatchCount=4 messageCount=16 l1Block=7,902,343 l1Timestamp=2025-03-14T17:50:01+0000
168+
INFO [06-02|08:03:04.498] created block l2Block=15 l2BlockHash=f48fcc..2f4412
169+
INFO [06-02|08:03:05.551] InboxTracker sequencerBatchCount=5 messageCount=18 l1Block=7,915,027 l1Timestamp=2025-03-16T14:56:01+0000
170+
INFO [06-02|08:03:05.568] created block l2Block=16 l2BlockHash=368751..af5f8b
171+
INFO [06-02|08:03:06.124] InboxTracker sequencerBatchCount=6 messageCount=30 l1Block=7,916,951 l1Timestamp=2025-03-16T22:00:09+0000
172+
INFO [06-02|08:03:06.569] created block l2Block=29 l2BlockHash=c9f179..bb553e
173+
INFO [06-02|08:03:06.655] InboxTracker sequencerBatchCount=7 messageCount=32 l1Block=7,920,611 l1Timestamp=2025-03-17T10:32:32+0000
174+
INFO [06-02|08:03:07.570] created block l2Block=31 l2BlockHash=37f20a..e11dcc
175+
INFO [06-02|08:03:07.620] InboxTracker sequencerBatchCount=9 messageCount=39 l1Block=7,924,098 l1Timestamp=2025-03-17T22:27:20+0000
176+
INFO [06-02|08:03:08.381] InboxTracker sequencerBatchCount=11 messageCount=52 l1Block=7,925,945 l1Timestamp=2025-03-18T04:15:34+0000
177+
INFO [06-02|08:03:08.570] created block l2Block=51 l2BlockHash=1bd97f..28eb52
178+
```
179+
180+
## Ampd Configuration
181+
182+
Once your node is up and running, you need to add the `Plume` chain to your [ampd daemon's](https://github.com/axelarnetwork/axelar-amplifier/tree/main/ampd) `config.toml`file. This can be done by adding in the following configuration:
183+
184+
<tabs>
185+
<tab-item title="testnet">
186+
```toml
187+
TBA
188+
```
189+
</tab-item>
190+
</tabs>
191+
192+
## Chain Registration
193+
194+
For your node to be recognized by the Axelar Network, you need to register your verifier's support for the chain with the `ampd` daemon. This can be done by running:
195+
196+
```bash
197+
ampd register-chain-support amplifier plume
198+
```

src/layouts/navigation.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,7 @@ export const getNavigation = (section) => {
532532
{ title: "Mantle", href: "/validator/external-chains/mantle/" },
533533
{ title: "Moonbeam", href: "/validator/external-chains/moonbeam/" },
534534
{ title: "Optimism", href: "/validator/external-chains/optimism/" },
535+
{ title: "Plume", href: "/validator/external-chains/plume/" },
535536
{ title: "Polygon", href: "/validator/external-chains/polygon/" },
536537
{ title: "Scroll", href: "/validator/external-chains/scroll/" },
537538
{ title: "Solana", href: "/validator/external-chains/solana/" },

0 commit comments

Comments
 (0)