ENV Variables
Use the export command to set variables. For example:
$ export ETHEREUM_JSONRPC_VARIANT=nethermind
$ export COIN=POA
$ export NETWORK=POA
The following variables are set for the Gnosis Chain Blockscout Instance. Note that some variables are not included as they contain private information which should not be exposed.
Gnosis-Chain-Variables.txt
6KB
Binary
Last updated 13 June, 2022.
blockscout-env-June-22.csv
20KB
Binary
This table is horizontally scrollable, version information is located in the last column. ENVs are listed by category:
Variable | Required | Description | Default | Version | Need recompile |
---|---|---|---|---|---|
DATABASE_URL | ✅ | Variable to define the Postgres Database endpoint. | (empty) | all | |
ETHEREUM_JSONRPC_VARIANT | ✅ | Tells the application which RPC Client the node is using (i.e. erigon , geth , nethermind , besu , or ganache ) (See Client Settings for more info) | ganache | all | |
ETHEREUM_JSONRPC_HTTP_URL | ✅ | The RPC endpoint used to fetch blocks, transactions, receipts, tokens. | localhost:8545 | all | |
ETHEREUM_JSONRPC_TRACE_URL | | The RPC endpoint specifically for the Erigon/Geth/Nethermind/Besu client used by trace_block and trace_replayTransaction. This can be used to designate a tracing node. | localhost:8545 | all | |
ETHEREUM_JSONRPC_WS_URL | | The WebSockets RPC endpoint used to subscribe to the newHeads subscription alerting the indexer to fetch new blocks. | ws://localhost:8546 | all | |
ETHEREUM_JSONRPC_TRANSPORT | | Specifies the transport for Blockscout to connect to the Ethereum Node. Available transports are http and ipc . If ipc is selected, also set IPC_PATH variable. | http | v3.1.0+ | |
ETHEREUM_JSONRPC_HTTP_INSECURE | | If true is set, allows insecure HTTP connections to the archive node. For instance, it allows to bypass expired SSL certificate at the archive node endpoint. Implemented in (#6573)[https://github.com/blockscout/blockscout/pull/6573] | (empty) | v5.0.0+ | |
ETHEREUM_JSONRPC_USER | | User in basic auth for JSON RPC endpoint. Implemented in (#6897)[https://github.com/blockscout/blockscout/pull/6897] | (empty) | master | |
ETHEREUM_JSONRPC_PASSWORD | | Password in basic auth for JSON RPC endpoint. Implemented in (#6897)[https://github.com/blockscout/blockscout/pull/6897] | (empty) | master | |
NETWORK | | Environment variable for the main EVM network such as Ethereum or POA. | POA | all | |
SUBNETWORK | | Environment variable for the subnetwork such as Core or Sokol Network. This will be displayed as selected in the chains list dropdown. | POA Sokol | all | |
IPC_PATH | | Path to the IPC file of the running node if IPC transport is chosen. | (empty) | v2.1.1+ | |
NETWORK_PATH | | Used to set a network path other than what is displayed in the root directory. An example would be to add /eth/mainnet/ to the root directory. | / | all | |
BLOCKSCOUT_HOST | | Host for API endpoint examples. | localhost | v2.1.0+ | |
BLOCKSCOUT_PROTOCOL | | Url scheme for blockscout. | in prod env https is used, in dev env http is used | v2.1.0+ | |
SECRET_KEY_BASE | | Use mix phx.gen.secret to generate a new Secret Key Base string to protect production assets. | (empty) | all | |
CHECK_ORIGIN | | Used to check the origin of requests when the origin header is present. It defaults to false . In case of true, it will check against the host value. | false | all | |
PORT | | Default port the application runs on is 4000. | 4000 | all | |
COIN | | The coin here is checked via the CoinGecko API to obtain USD prices on graphs and other areas of the UI. | POA | all | |
COIN_NAME | | Displayed name of the coin. Also used for "Add chain to MetaMask" button and for Account functionality as native coin name in the email letters for watch list. | (empty) | v4.1.2+ | |
EMISSION_FORMAT | | Should be set to POA if you have block emission identical to POA Network. This env var is used only if CHAIN_SPEC_PATH is set. | DEFAULT | v2.0.4+ | |
CHAIN_SPEC_PATH | | Chain specification path (absolute file system path or URL) to import block emission reward ranges and genesis account balances from. Geth- and OpenEthereum-style specs are supported. | (empty) | v2.0.4+ | |
SUPPLY_MODULE | | This environment variable is used by the xDai Chain/RSK in order to tell the application how to calculate the total supply of the chain. Available values are TokenBridge , RSK | (empty) | all | |
POOL_SIZE | | Variable to define the number of database connections allowed excluding read-only API endpoints requests. | 50 | all | |
POOL_SIZE_API | | Variable to define the number of database connections allowed for read-only API endpoints requests. | 50 | v4.1.0+ | |
ECTO_USE_SSL | | Production environment variable to use SSL on Ecto queries. | true | all | |
HEART_BEAT_TIMEOUT | | Production environment variable to restart the application in the event of a crash. | 30 | all | |
HEART_COMMAND | | Production environment variable to restart the application in the event of a crash. | (empty) | all | |
ELIXIR_VERSION | | Elixir version to install on the node before Blockscout deploy. It is used in bash script in Terraform / Ansible deployment script | (empty) | all | |
GRAPHIQL_TRANSACTION | | Default transaction hash in a sample query to GraphiQL. | (empty) | v1.2.0+ | ✅ |
DISABLE_WEBAPP | | If true , endpoints to webapp are hidden (compile-time). Also, enabling it makes notifications go through db_notify | false | v2.0.3+ | ✅ |
DISABLE_READ_API | | If true , read-only endpoints to API are hidden (compile-time). | false | v2.0.3+ | ✅ |
DISABLE_WRITE_API | | If true , write endpoints to API are hidden (compile-time). | false | v2.0.3+ | ✅ |
WEBAPP_URL | | Link to web application instance, e.g. protocol://host/path | (empty) | v2.0.3+ | |
API_URL | | Link to API instance, e.g. protocol://host/path | (empty) | v2.0.3+ | |
WOBSERVER_ENABLED | | If true enables wobserver interface. | (empty) | v3.3.2+ | ✅ |
CHECKSUM_ADDRESS_HASHES | | If set to true , redirects to checksummed version of address hashes. | true | v3.1.0+ | |
CHECKSUM_FUNCTION | | Defines checksum address function. 2 available values: rsk , eth | eth | v2.0.1+ | |
RESTRICTED_LIST | | A comma-separated list of addresses to enable restricted access to them. | (empty) | v3.3.3+ | |
RESTRICTED_LIST_KEY | | A key to access addresses listed in RESTRICTED_LIST variable. Can be passed via query param to the page's URL: ?key=... | (empty) | v3.3.3+ | |
CUSTOM_CONTRACT_ADDRESSES_TEST_TOKEN | | List of test tokens addresses: test label will be applied and those tokens will be excluded from omni bridge market cap calculation. | (empty) | v3.6.0+ | |
CHAIN_ID | | Chain ID of the network. For instance, 100 in the case of xDai chain. | (empty) | v3.7.0+ | |
JSON_RPC | | (empty) | v4.1.0+ | | |
HEALTHY_BLOCKS_PERIOD | | 5 mins | v2.0.2+ | | |
NEW_TAGS | | (empty) | v5.0.0+ | | |
CUSTOM_CONTRACT_ADDRESSES_${tag_name} | | (empty) | v5.0.0+ | | |
API_V2_ENABLED | | (empty) | v5.0.0+ | | |
TOKEN_ID_MIGRATION_FIRST_BLOCK | | 0 | v5.0.0+ | | |
TOKEN_ID_MIGRATION_CONCURRENCY | | 1 | v5.0.0+ | | |
TOKEN_ID_MIGRATION_BATCH_SIZE | | Interval of token transfer block numbers processed by a token id migration worker at a time. Implemented in #6391 | 500 | v5.0.0+ | |
SESSION_COOKIE_DOMAIN | | (empty) | v5.0.0+ | | |
DECODE_NOT_A_CONTRACT_CALLS | | Allows to decode contract calls directed to addresses which are not contracts. Implemented in #6541 | (empty) | v5.1.0+ | |
Variable | Required | Description | Default | Version |
---|---|---|---|---|
BLOCK_TRANSFORMER | | Transformer for blocks: base or clique. | base | v1.3.4+ |
DISABLE_INDEXER | | If true , indexer application doesn't run. | false | v2.0.3+ |
INDEXER_DISABLE_PENDING_TRANSACTIONS_FETCHER | | If true , pending transactions fetcher is disabled. | false | v4.1.2+ |
INDEXER_DISABLE_INTERNAL_TRANSACTIONS_FETCHER | | If true , internal transactions fetcher is disabled. | false | v4.1.2+ |
INDEXER_DISABLE_BLOCK_REWARD_FETCHER | | if true , block rewards fetcher is disabled. | false | v4.1.3+ |
INDEXER_DISABLE_ADDRESS_COIN_BALANCE_FETCHER | | If true , coin balances fetcher is disabled. | false | v4.1.3+ |
INDEXER_DISABLE_CATALOGED_TOKEN_UPDATER_FETCHER | | If true , cataloged tokens metadata fetcher is disabled. | false | v4.1.3+ |
INDEXER_MEMORY_LIMIT | | Memory soft limit for the indexer. | 1Gb | v4.1.3+ |
INDEXER_EMPTY_BLOCKS_SANITIZER_BATCH_SIZE | | Batch size for empty block sanitizer (re-fetcher). | 100 | v4.1.3+ |
INDEXER_CATCHUP_BLOCKS_BATCH_SIZE | | 10 | v5.0.0+ | |
INDEXER_CATCHUP_BLOCKS_CONCURRENCY | | 10 | v5.0.0+ | |
INDEXER_DISABLE_EMPTY_BLOCK_SANITIZER | | Empty blocks sanitizer is disabled if true | false | v4.1.3+ |
DISABLE_REALTIME_INDEXER | | If true , realtime fetcher doesn't run | false | v4.1.6+ |
DISABLE_KNOWN_TOKENS | | Disables or enables token symbol for known contract. | false | v3.4.0+ |
FIRST_BLOCK | | The block number, where import of blocks by catchup fetcher begins from. | 0 | v1.3.8+ |
LAST_BLOCK | | The block number, where import of blocks by catchup fetcher stops. | (empty) | v2.0.3+ |
TRACE_FIRST_BLOCK | | The block number, where indexing of internal transactions begins from. | 0 | v4.1.0+ |
TRACE_LAST_BLOCK | | The block number, where indexing of internal transactions stops. | (empty) | v4.1.0+ |
BLOCK_RANGES | | | v4.1.7+ | |
FETCH_REWARDS_WAY | | Tells the application how to calculate block rewards, by fetching via json_rpc ( trace_block ) or manual by block params (manual ). | trace_block | v4.1.4+ |
ETHEREUM_JSONRPC_DEBUG_TRACE_TRANSACTION_TIMEOUT | | Timeout for debug_traceTransaction JSON RPC method request in case of geth archive node. Supported time formats: https://pkg.go.dev/time#ParseDuration. Introduced in #5505 | 5s | v4.1.3+ |
ETHEREUM_JSONRPC_DISABLE_ARCHIVE_BALANCES | | If true , all the requests with the method eth_getBalance with any block as parameter but latest are ignored. Implemented in #6001 | false | v5.0.0+ |
ETHEREUM_JSONRPC_PENDING_TRANSACTIONS_TYPE | | Defines which method will be used for fetching pending transactions: default - default method for fetching internal transactions for current ETHEREUM_JSONRPC_VARIANT , geth - txpool_content method will be used, parity - parity_pendingTransactions will be used. Implemented in #6001 | default | v5.0.0+ |
DISABLE_TOKEN_INSTANCE_FETCHER | | If true , token instance fetcher doesn't run | false | v5.0.0+ |
INDEXER_INTERNAL_TRANSACTIONS_BATCH_SIZE | | 10 | v5.0.0+ | |
INDEXER_INTERNAL_TRANSACTIONS_CONCURRENCY | | 4 | v5.0.0+ | |
INDEXER_BLOCK_REWARD_BATCH_SIZE | | 10 | master | |
INDEXER_BLOCK_REWARD_CONCURRENCY | | 4 | master | |
INDEXER_TOKEN_INSTANCE_BATCH_SIZE | | 1 | master | |
INDEXER_TOKEN_INSTANCE_CONCURRENCY | | 10 | master | |
INDEXER_RECEIPTS_BATCH_SIZE | | 250 | v5.0.0+ | |
INDEXER_RECEIPTS_CONCURRENCY | | 10 | v5.0.0+ | |
INDEXER_COIN_BALANCES_BATCH_SIZE | | 500 | v5.0.0+ | |
INDEXER_COIN_BALANCES_CONCURRENCY | | 4 | v5.0.0+ | |
INDEXER_TX_ACTIONS_ENABLE | | false | v5.1.0+ | |
INDEXER_TX_ACTIONS_MAX_TOKEN_CACHE_SIZE | | Maximum number of items in an internal cache of tx actions indexing process (to limit memory consumption). Implemented in #6582. | 100000 | v5.1.0+ |
INDEXER_TX_ACTIONS_REINDEX_FIRST_BLOCK | | The first block of a block range for historical indexing or reindexing of tx actions. Implemented in #6582. | (empty) | v5.1.0+ |
INDEXER_TX_ACTIONS_REINDEX_LAST_BLOCK | | The last block of a block range for historical indexing or reindexing of tx actions. Implemented in #6582. | (empty) | v5.1.0+ |
INDEXER_TX_ACTIONS_REINDEX_PROTOCOLS | | Comma-separated names of protocols which should be indexed or reindexed on historical blocks defined by the range. Example: uniswap_v3,zkbob - only these protocols will be indexed or reindexed for the defined block range. If the value is empty string (or not defined), all supported protocols will be indexed/reindexed. This option is not applicable to realtime and catchup fetchers (it always indexes all supported protocols). Implemented in #6582. | (empty) | v5.1.0+ |
INDEXER_CATCHUP_MISSING_RANGES_BATCH_SIZE | | 100000 | v5.0.0+ | |
MIN_MISSING_BLOCK_NUMBER_BATCH_SIZE | | 100000 | v5.0.0+ | |
INDEXER_INTERNAL_TRANSACTIONS_TRACER_TYPE | | Tracer type for debug_traceTransaction request for geth-like nodes. Possible values are: js to use custom Blockscout js tracer, call_tracer to use built-in callTracer geth tracer. Implemented in #6721 | call_tracer | v5.1.0+ |
Variable | Required | Description | Default | Version |
---|---|---|---|---|
DISABLE_EXCHANGE_RATES | | Disables or enables fetching of coin price from Coingecko API. | false | v3.1.2+ |
EXCHANGE_RATES_SOURCE | | This environment variable is used to calculate the exchange rates. Available value is token_bridge . Available values are also coin_gecko and coin_market_cap . | (empty) | v4.1.4+ |
EXCHANGE_RATES_COINGECKO_COIN_ID | | Explicitly set CoinGecko coin ID. | (empty) | v4.1.4+ |
EXCHANGE_RATES_COINGECKO_API_KEY | | CoinGecko API key. | (empty) | v4.1.4+ |
EXCHANGE_RATES_COINMARKETCAP_API_KEY | | CoinMarketCap API key. | (empty) | v4.1.4+ |
EXCHANGE_RATES_FETCH_BTC_VALUE | | (empty) | v4.1.5+ |
Variable | Required | Description | Default | Version |
---|---|---|---|---|
CACHE_TXS_COUNT_PERIOD | | Interval in seconds to restart the task, which calculates the total txs count. | 2 hours | v4.1.3+ |
CACHE_ADDRESS_COUNT_PERIOD | | 2 hours | v4.1.3+ | |
CACHE_ADDRESS_SUM_PERIOD | | time to live of addresses sum (except burn address) cache in seconds. This var was introduced in #2862 | 1 hour | v4.1.3+ |
CACHE_TOTAL_GAS_USAGE_PERIOD | | Interval in seconds to restart the task, which calculates the total gas usage. | 2 hours | v4.1.3+ |
CACHE_ADDRESS_TRANSACTIONS_GAS_USAGE_COUNTER_PERIOD | | Interval in seconds to restart the task, which calculates gas usage at the address. | 30 minutes | v4.1.3+ |
CACHE_TOKEN_HOLDERS_COUNTER_PERIOD | | Interval in seconds to restart the task, which calculates holders count of the token. | 1 hour | v4.1.3+ |
CACHE_TOKEN_TRANSFERS_COUNTER_PERIOD | | Interval in seconds to restart the task, which calculates transfers count of the token. | 1 hour | v4.1.3+ |