Node configuration

Data structure

By default, the database and configuration files for the Iron Fish node are created in the ~./ironfish directory.

The file structure is composed of the following:

[Iron Fish Node]
├── accounts
...└── default
├── config.json
├── internal.json
└── databases
...└── default

Configuration files can be edited by the commands described here. Accounts can be edited by the commands described here

You can change the working directory by passing the flag --datadir when running a command. Doing so will require you to sync the node again with the network.

List of configuration options

ElementDescription
accountNameDefault account to use with the CLI
blockGraffitiWhen mining, value to set on the graffiti field of new blocks. Truncated to 32 bytes
bootstrapNodesList of addresses to connect to when launching the node
databaseNameDefault name for the database
editorPath for the default code editor for the config file
enableListenP2PEnable the WebSocket listen server
enableRpcEnable the RPC server
enableRpcIpcEnable the RPC to be served on IPC
enableRpcTcpEnable the RPC to be served on TCP
enableTelemetryEnable anonymous telemetry collection
enableMetricsEnable internal metrics collection (required for Status command)
getFundsApiHTTP URL for the Faucet API
ipcPathPath for the RPC IPC directory
logLevelLog level of the node. Log levels can be applied to tagged logs like so: *:warn,tag:info
logPrefixString to be prefixed to all logs. If any of the following strings are included, will replace them with the corresponding value: %time%, %level%, %tag%
nodeNameName of the node to be broadcasted to peers (optional)
peerPortPort on which to host the WebSocket listen server
rpcTcpHostAddress to connect to when establishing an RPC connection
rpcTcpPortPort to connect to when establishing an RPC connection
maxPeersThe maximum number of peers the node can be connected to at a time
targetPeersThe ideal number of peers we'd like to be connected to. The node will attempt to establish new connections when below this number.
telemetryApiHTTP URL for the Telemetry API