Skip to content

Commit 8446290

Browse files
authored
Breakdown docker command (axelarnetwork#667)
* Breakdown docker command to help operators adjust it to their environment * Improved wording * Removed Optimism reference from a copy/paste error
1 parent 37708e3 commit 8446290

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

src/pages/validator/external-chains/immutable.mdx

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,9 +337,48 @@ The output should be:
337337
</tab-item>
338338
</tabs>
339339
340+
## Understanding the Docker command
341+
342+
The following is a breakdown of the docker command used to start up the Immutable zkEVM node.
343+
This information should help node operators adjust the command to their respected environments.
344+
345+
For simplicity, we use the Mainnet start up command, but the information applies to both Testnet and Mainnet.
346+
347+
```bash
348+
docker run \
349+
-d \
350+
--restart=always \
351+
-v /opt/immutable-zkevm:/mnt/geth \
352+
--name geth \
353+
-p 8545:8545 \
354+
geth \
355+
--config /etc/geth/mainnet.toml \
356+
--datadir /mnt/geth \
357+
--keystore /mnt/geth/keystore \
358+
--networkid 13371 \
359+
--http \
360+
--http.port "8545" \
361+
--http.addr "0.0.0.0"
362+
```
363+
364+
* `-d` Detach. This means the container will start without holding on to your terminal.
365+
* `--restart=always`: Always keep it running. This tells the Docker daemon, if the container stops running (e.g., if the host restarts), start it up again.
366+
* `-v <LOCAL_DIR>:<CONTAINER_DIR>`: Mount host directory. This tells docker to map a directory from your host, to a directory inside the container.
367+
* `--name geth`: Name the container. This helps us reference the container later in the docker CLI. If you run `docker ps` you should see the container with an ID and this name.
368+
* `-p <HOST_PORT>:<CONTAINER_PORT>`. Map host port. This tells docker to forward any connections on the host's `<HOST_PORT>` to the container's `<CONTAINER_PORT>`.
369+
* `geth`: Command line. Here starts the command line inside the container. This is the binary for the `immutable-geth` instance running inside the container.
370+
* `--config /etc/geth/mainnet.toml`: Pre-baked mainnet configuration. This path **_MUST NOT BE MODIFIED_**.
371+
* `--datadir <CONTAINER_DIR>`: Directory path. This is the directory `geth` will use for storage. It **_MUST_** match `<CONTAINER_DIR>` in the `-v` flag. It **_MUST_** match the path used in the initialisation commands ran previously.
372+
* `--keystore <CONTAINER_DIR>/keystore`: Keystore path. This is relative to `<CONTAINER_DIR>` mentioned above. NOTE: we have a backlog task to potentially remove this.
373+
* `--networkid 13371`: ChainID. This ***MUST NOT*** be modified.
374+
* `--http`: Enable RPC interface.
375+
* `--http.port <CONTAINER_PORT>`: Expose RPC interface in container port `<CONTAINER_PORT>`. This ***MUST*** match `<CONTAINER_PORT>` in the `-p` flag above.
376+
* `--http.addr "0.0.0.0"`. Expose the RPC interface in all network addresses.
377+
378+
340379
## Configure vald
341380
342-
In order for `vald` to connect to your Optimism node, your `rpc_addr` should be exposed in
381+
In order for `vald` to connect to your Immutable zkEVM node, your `rpc_addr` should be exposed in
343382
vald's `config.toml`
344383
345384
<tabs>

0 commit comments

Comments
 (0)