Configuration
The router is accepts configuration using the config file config.json in the root directory of the docker-compose repo.
The JSON schema accepts the following keys:
redis: Required. Object containing the following keys to configure an external redis instance:host: Required. The hostname of the redis instance.port: Required. The port of the redis instance.
server: Required. Object containing the following keys to configure the HTTP server:adminToken: Required. Secret token used to authenticate admin requests.port: Optional. The port the router will listen on. Defaults to8080.host: Optional. The host the router will listen on. Defaults to0.0.0.0.
web3SignerUrl: Recommended. The URL for a running Web3Signer instance. This is the recommended approach to private key storage.mnemonic: Optional, Discouraged. The mnemonic used to generate the private key. Using the mnemonic directly in the config file is unsafe and not recommended.chains: Required. The chain configuration. A JSON object with the following keyed by Domain IDs with the following object schema as value:providers: Required. An array of providers URLs for a chain. Use a minimum of 1 URL, but additional URLs provide more fallback protection against provider issues.assets: Required. An array of assets. Each asset is a JSON object with the following keys:assetId: Required. The asset ID (ERC20 token address). This needs to represent the "local" asset which is the Connext bridge minted asset.name: Required. The Asset Name.
network: Required.mainnetortestnet.environment: Optional.productionorstaging.mainnetnetwork config will always beproduction.logLevel: Optional. The log level. Defaults toinfo. Acceptsdebug,info,warn,error,fatal,trace,silent.sequencerUrl: Optional. The URL for the sequencer. Only used to override defaults.cartographerUrl: Optional. The URL for the cartographer. Only used to override defaults.
Example Configuration File
These are example RPC URLs. Please get your own RPC URLs!
{
"chains": {
"1634886255": {
"assets": [
{
"address": "0x8c556cF37faa0eeDAC7aE665f1Bb0FbD4b2eae36",
"name": "USDC"
},
{
"address": "0x2983bf5c334743Aa6657AD70A55041d720d225dB",
"name": "WETH"
}
],
"providers": [
"https://arb-mainnet.g.alchemy.com/v2/...",
"https://rpc.ankr.com/arbitrum"
]
},
"1869640809": {
"assets": [
{
"address": "0x67E51f46e8e14D4E4cab9dF48c59ad8F512486DD",
"name": "USDC"
},
{
"address": "0xbAD5B3c68F855EaEcE68203312Fd88AD3D365e50",
"name": "WETH"
}
],
"providers": [
"https://opt-mainnet.g.alchemy.com/v2/...",
"https://rpc.ankr.com/optimism"
]
},
"1886350457": {
"assets": [
{
"address": "0xF96C6d2537e1af1a9503852eB2A4AF264272a5B6",
"name": "USDC"
},
{
"address": "0x4b8BaC8Dd1CAA52E32C07755c17eFadeD6A0bbD0",
"name": "WETH"
}
],
"providers": [
"https://polygon-mainnet.g.alchemy.com/v2/...",
"https://rpc.ankr.com/polygon"
]
},
"6450786": {
"assets": [
{
"address": "0x5e7D83dA751F4C9694b13aF351B30aC108f32C38",
"name": "USDC"
},
{
"address": "0xA9CB51C666D2AF451d87442Be50747B31BB7d805",
"name": "WETH"
}
],
"providers": [
"https://bsc-dataseed1.binance.org",
"https://bsc-dataseed2.binance.org",
"https://rpc.ankr.com/bsc"
]
},
"6648936": {
"assets": [
{
"address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"name": "USDC"
},
{
"address": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
"name": "WETH"
}
],
"providers": [
"https://eth-mainnet.alchemyapi.io/v2/...",
"https://rpc.ankr.com/eth"
]
},
"6778479": {
"assets": [
{
"address": "0x44CF74238d840a5fEBB0eAa089D05b763B73faB8",
"name": "USDC"
},
{
"address": "0x538E2dDbfDf476D24cCb1477A518A82C9EA81326",
"name": "WETH"
}
],
"providers": [
"https://rpc.gnosischain.com",
"https://rpc.ankr.com/gnosis"
]
}
},
"environment": "production",
"logLevel": "debug",
"messageQueue": {
"uri": "amqp://guest:guest@rabbitmq:5672"
},
"redis": {
"host": "redis",
"port": 6379
},
"server": {
"adminToken": "supersecret"
},
"web3signer": "http://signer:9000",
"network": "mainnet"
}Last updated