Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.
🚗 Autoscout is now available, providing a simple one-click explorer deployment with Blockscout’s optimized hosting infrastructure. Use it for early testing, modifications, and launching a full production-grade explorer. Get Started Now and have your explorer up-and-running in minutes.
We continue to add new features and functionality to Blockscout and recommend updating your instance with each new release. You can check compatibility between your current backend and frontend versions in the Compatibility Matrix.
If it has been a while since your last upgrade, we recommend performing incremental upgrades to ensure proper performance. For example if you are running backend v6.9.0, first upgrade to v6.10.0 prior to upgrading to the latest 7.0 version. This reduces downtime and ensures all breaking changes are handled. Please update to v7.0 before updating to v8.0. Follow the same process below replacing v7 with the latest front and backend repositories.
This guide walks through the process of updating Blockscout to backend v7.0.2 and frontend v1.38.0 (March, 2025) from v6.10.X. If you have questions about a different upgrade, contact us in Discord. Breaking changes follow the instructions.
Backend variable renaming only applies to the 6.10.X -> 7.0.X update. If you are performing a more extensive update, please check renaming & deprecations from the release notes of every minor release (6.8.0, 6.9.0 etc) within your update range.
Newly renamed variables include the MIGRATION prefix. If a variable contained MIGRATION in the name previously, it has been moved to the beginning of the variable. Expand below to see all variables you need to rename.
current values NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND=<my-background>NEXT_PUBLIC_HOMEPAGE_PLATE_TEXT_COLOR=<my-text-color> new values NEXT_PUBLIC_HOMEPAGE_HERO_BANNER_CONFIG={'background':['<my-background>'],'text_color':['<my-text-color>']}
/api/v1/health, /api/v1/health/liveness, /api/v1/health/readiness have been removed in favor of /api/health/** endpoints.
/api/v2/addresses/:address_hash returns 200 instead of 404 for valid hashes which are not in the DB.
/api/v2/tokens/:token_hash/instances owner’s ens_domain_name property now preloads the ens domain name.
transaction hash and address hash are no longer mandatory in the txlistinternal API v1 endpoint
/metrics endpoint available on indexer pod (previously existed only on API pod)
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Blockscout","colors":{"primary":"#5351db","light":"#5351db","dark":"#5351db"},"logo":{"light":"https://mintcdn.com/blockscout/cNJj4Zpe0FBD2sXC/logo/Color_BS_logo_hor.svg?fit=max\u0026auto=format\u0026n=cNJj4Zpe0FBD2sXC\u0026q=85\u0026s=7cffdcbb354b1aa090d9f7d3ca4f3452","dark":"https://mintcdn.com/blockscout/cNJj4Zpe0FBD2sXC/logo/White_BS_logo_hor.svg?fit=max\u0026auto=format\u0026n=cNJj4Zpe0FBD2sXC\u0026q=85\u0026s=79d28502f70131c02702daa820d2345b","href":"https://www.blockscout.com/"},"favicon":"https://mintcdn.com/blockscout/cNJj4Zpe0FBD2sXC/logo/Color_BS_symbol.svg?fit=max\u0026auto=format\u0026n=cNJj4Zpe0FBD2sXC\u0026q=85\u0026s=1bf7f87645a86b0dd71ce0fbd3403ddd","appearance":{"default":"light"},"background":{"decoration":"gradient"},"navbar":{"links":[{"href":"https://discord.gg/blockscout","label":"Support"}],"primary":{"type":"github","href":"https://github.com/blockscout/blockscout"}},"footer":{"socials":{"github":"https://github.com/blockscout/blockscout","telegram":"https://t.me/blockscoutcommunity","discord":"https://discord.gg/blockscout","x":"https://x.com/blockscout"}},"fonts":{"heading":{"family":"Poppins"},"body":{"family":"Inter"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/blockscout"},{"anchor":"Blog","icon":"newspaper","href":"https://www.blog.blockscout.com/"},{"anchor":"API Docs","icon":"cloud","href":"https://docs.blockscout.com/devs/apis"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"blockscout","hasAudioNarration":false,"actualSubdomain":"blockscout","customDomains":["docs.blockscout.com"],"gitSource":{"type":"github","owner":"blockscout","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae9a843814e96f4de6f7e96","collectionId":"d334bfbb-94c3-4583-98ca-74cbc6ba3dd9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae9a843814e96f4de6f7e96"},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae9a843814e96f4de6f7e96","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Blockscout API","count":281},{"language":"default","tag":"Blockscout API Endpoints","count":194},{"language":"default","tag":"Guides","count":160},{"language":"default","tag":"Setup and Run Blockscout","count":88},{"language":"default","tag":"RPC \u0026 ETH RPC Endpoints","count":43},{"language":"default","tag":"Deployment","count":40},{"language":"default","tag":"Using Blockscout","count":35},{"language":"default","tag":"addresses","count":23},{"language":"default","tag":"Blockscout APIs","count":22},{"language":"default","tag":"Additional Service APIs","count":22}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"#content-container{overflow-wrap:break-word}"}],"page":{"pagePath":"setup/deployment/upgrade-guide-v7-0","slug":"/setup/deployment/upgrade-guide-v7-0","pageMetadata":{"title":"Upgrade Guide for Blockscout v7.0 and v8.0","description":"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.","icon":"arrow-up","href":"/setup/deployment/upgrade-guide-v7-0"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Accordion,Heading,Info,Table,Tip,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Tip,{children:_jsxs(_components.p,{children:[`🚗 `,_jsx(_components.a,{href:`/using-blockscout/autoscout`,children:`Autoscout is now available`}),`, providing a simple one-click explorer deployment with Blockscout’s optimized hosting infrastructure. Use it for early testing, modifications, and launching a full production-grade explorer. `,_jsx(_components.a,{href:`/using-blockscout/autoscout`,children:`Get Started Now`}),` and have `,_jsx(_components.strong,{children:`your explorer up-and-running in minutes.`})]})}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`We continue to add new features and functionality to Blockscout and recommend updating your instance with each new release. You can check compatibility between your current backend and frontend versions in the `,_jsx(_components.a,{href:`/setup/requirements/back-front-compatibility-matrix`,children:`Compatibility Matrix`}),`.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`If it has been a while since your last upgrade, we recommend performing incremental upgrades to ensure proper performance. For example if you are running backend v6.9.0, first upgrade to v6.10.0 prior to upgrading to the `,_jsx(_components.a,{href:`https://github.com/blockscout/blockscout/releases`,children:`latest 7.0 version`}),`. This reduces downtime and ensures all breaking changes are handled. Please update to v7.0 before updating to v8.0. Follow the same process below replacing v7 with the latest front and backend repositories.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`getting-started`,children:`Getting Started`}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`This guide walks through the process of updating Blockscout to backend v7.0.2 and frontend v1.38.0 (March, 2025) from v6.10.X. If you have questions about a different upgrade, `,_jsx(_components.a,{href:`https://discord.gg/blockscout`,children:`contact us in Discord`}),`. Breaking changes follow the instructions.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`1-update-backend-env-variables`,children:`1) Update backend ENV variables`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Backend variable renaming only applies to the 6.10.X -> 7.0.X update. If you are performing a more extensive update, please check renaming \u0026 deprecations from the release notes of every minor release (6.8.0, 6.9.0 etc) within your update range.`})}),`\n`,_jsxs(_components.p,{children:[`Newly renamed variables include the `,_jsx(_components.code,{children:`MIGRATION`}),` prefix. If a variable contained `,_jsx(_components.code,{children:`MIGRATION`}),` in the name previously, it has been moved to the beginning of the variable. Expand below to see all variables you need to rename.`]}),`\n`,_jsx(Accordion,{title:`Backend Renamed Variables`,id:`backend-renamed-variables`,children:_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Old name`}),_jsx(_components.th,{children:`New name`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_ID_MIGRATION_FIRST_BLOCK`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_ID_FIRST_BLOCK`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_ID_MIGRATION_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_ID_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_ID_MIGRATION_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_ID_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SHRINK_INTERNAL_TRANSACTIONS_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_SHRINK_INTERNAL_TRANSACTIONS_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SHRINK_INTERNAL_TRANSACTIONS_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_SHRINK_INTERNAL_TRANSACTIONS_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_INSTANCE_OWNER_MIGRATION_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_INSTANCE_OWNER_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_INSTANCE_OWNER_MIGRATION_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_INSTANCE_OWNER_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_INSTANCE_OWNER_MIGRATION_ENABLED`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_INSTANCE_OWNER_ENABLED`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DENORMALIZATION_MIGRATION_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_DENORMALIZATION_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DENORMALIZATION_MIGRATION_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_DENORMALIZATION_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_TRANSFER_TOKEN_TYPE_MIGRATION_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_TRANSFER_TOKEN_TYPE_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`TOKEN_TRANSFER_TOKEN_TYPE_MIGRATION_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_TOKEN_TRANSFER_TOKEN_TYPE_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SANITIZE_INCORRECT_NFT_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_SANITIZE_INCORRECT_NFT_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SANITIZE_INCORRECT_NFT_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_SANITIZE_INCORRECT_NFT_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SANITIZE_INCORRECT_NFT_TIMEOUT`}),_jsx(_components.td,{children:`MIGRATION_SANITIZE_INCORRECT_NFT_TIMEOUT`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SANITIZE_INCORRECT_WETH_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_SANITIZE_INCORRECT_WETH_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SANITIZE_INCORRECT_WETH_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_SANITIZE_INCORRECT_WETH_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SANITIZE_INCORRECT_WETH_TIMEOUT`}),_jsx(_components.td,{children:`MIGRATION_SANITIZE_INCORRECT_WETH_TIMEOUT`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`REINDEX_INTERNAL_TRANSACTIONS_STATUS_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_REINDEX_INTERNAL_TRANSACTIONS_STATUS_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`REINDEX_INTERNAL_TRANSACTIONS_STATUS_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_REINDEX_INTERNAL_TRANSACTIONS_STATUS_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`REINDEX_INTERNAL_TRANSACTIONS_STATUS_TIMEOUT`}),_jsx(_components.td,{children:`MIGRATION_REINDEX_INTERNAL_TRANSACTIONS_STATUS_TIMEOUT`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`FILECOIN_PENDING_ADDRESS_OPERATIONS_MIGRATION_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_FILECOIN_PENDING_ADDRESS_OPERATIONS_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`FILECOIN_PENDING_ADDRESS_OPERATIONS_MIGRATION_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_FILECOIN_PENDING_ADDRESS_OPERATIONS_CONCURRENCY`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`ARBITRUM_DA_RECORDS_NORMALIZATION_MIGRATION_BATCH_SIZE`}),_jsx(_components.td,{children:`MIGRATION_ARBITRUM_DA_RECORDS_NORMALIZATION_BATCH_SIZE`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`ARBITRUM_DA_RECORDS_NORMALIZATION_MIGRATION_CONCURRENCY`}),_jsx(_components.td,{children:`MIGRATION_ARBITRUM_DA_RECORDS_NORMALIZATION_CONCURRENCY`})]})]})]})}),`\n`,_jsx(Heading,{level:`3`,id:`2-install-backend`,children:`2) Install backend`}),`\n`,_jsxs(_components.p,{children:[`-> `,_jsx(_components.a,{href:`https://hub.docker.com/layers/blockscout/blockscout/7.0.2/images/sha256-b846205631b5bf525022c7d15d076fe0fcbf627e00e03b8285aeccffed3ad145`,children:`blockscout/blockscout:7.0.2`})]}),`\n`,_jsx(Heading,{level:`3`,id:`3-install-frontend`,children:`3) Install frontend`}),`\n`,_jsxs(_components.p,{children:[`-> `,_jsx(_components.a,{href:`https://github.com/blockscout/frontend/pkgs/container/frontend/365117431?tag=v1.38.0`,children:`ghcr.io/blockscout/frontend:v1.38.0`})]}),`\n`,_jsxs(Accordion,{title:`Frontend Variable Updates`,id:`frontend-variable-updates`,children:[_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`From`}),_jsx(_components.th,{children:`To`}),_jsx(_components.th,{children:`Example`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`NEXT_PUBLIC_ROLLUP_L1_BASE_URL NEXT_PUBLIC_ROLLUP_PARENT_CHAIN_NAME`}),_jsx(_components.td,{children:`NEXT_PUBLIC_ROLLUP_PARENT_CHAIN`}),_jsxs(_components.td,{children:[`current values `,_jsx(_components.code,{children:`NEXT_PUBLIC_ROLLUP_L1_BASE_URL =\u003cL1-url>`}),` `,_jsx(_components.code,{children:`NEXT_PUBLIC_ROLLUP_PARENT_CHAIN_NAME =\u003cchain-name>`}),`new values `,_jsx(_components.code,{children:`NEXT_PUBLIC_ROLLUP_PARENT_CHAIN={'name':'\u003cchain-name>','baseUrl':'\u003cL1-url>'}`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`NEXT_PUBLIC_RE_CAPTCHA_V3_APP_SITE_KEY`}),_jsx(_components.td,{children:`NEXT_PUBLIC_RE_CAPTCHA_APP_SITE_KEY`}),_jsx(_components.td,{})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`NEXT_PUBLIC_HOMEPAGE_PLATE_TEXT_COLOR NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND`}),_jsx(_components.td,{children:`NEXT_PUBLIC_HOMEPAGE_HERO_BANNER_CONFIG`}),_jsxs(_components.td,{children:[`current values `,_jsx(_components.code,{children:`NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND=\u003cmy-background>`}),` `,_jsx(_components.code,{children:`NEXT_PUBLIC_HOMEPAGE_PLATE_TEXT_COLOR=\u003cmy-text-color>`}),` new values `,_jsx(_components.code,{children:`NEXT_PUBLIC_HOMEPAGE_HERO_BANNER_CONFIG={'background':['\u003cmy-background>'],'text_color':['\u003cmy-text-color>']}`})]})]})]})]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Deprecated Frontend Variables`})}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsx(_components.tr,{children:_jsx(_components.th,{children:`Deprecated`})})}),_jsxs(_components.tbody,{children:[_jsx(_components.tr,{children:_jsx(_components.td,{children:`NEXT_PUBLIC_AUTH0_CLIENT_ID`})}),_jsx(_components.tr,{children:_jsx(_components.td,{children:`NEXT_PUBLIC_AUTH_URL`})}),_jsx(_components.tr,{children:_jsx(_components.td,{children:`NEXT_PUBLIC_LOGOUT_URL`})}),_jsx(_components.tr,{children:_jsx(_components.td,{children:`FAVICON_GENERATOR_API_KEY`})}),_jsx(_components.tr,{children:_jsx(_components.td,{children:`NEXT_PUBLIC_SENTRY_DSN`})}),_jsx(_components.tr,{children:_jsx(_components.td,{children:`SENTRY_CSP_REPORT_URI`})}),_jsx(_components.tr,{children:_jsx(_components.td,{children:`NEXT_PUBLIC_SENTRY_ENABLE_TRACING`})})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`4-install-microservices`,children:`4) Install microservices`}),`\n`,_jsxs(_components.p,{children:[`-> Stats microservice `,_jsx(_components.a,{href:`https://github.com/blockscout/blockscout-rs/pkgs/container/stats/353347284?tag=v2.5.0`,children:`ghcr.io/blockscout/stats:v2.5.0`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`-> Use the `,_jsx(_components.code,{children:`latest`}),` tag to install any other microservices used with your instance `,_jsx(_components.a,{href:`https://github.com/blockscout/blockscout-rs`,children:`https://github.com/blockscout/blockscout-rs`})]}),`\n`,_jsx(Heading,{level:`2`,id:`breaking-changes`,children:`Breaking Changes`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`/api/v1/health`}),`, `,_jsx(_components.code,{children:`/api/v1/health/liveness`}),`, `,_jsx(_components.code,{children:`/api/v1/health/readiness`}),` have been removed in favor of `,_jsx(_components.code,{children:`/api/health/**`}),` endpoints.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`/api/v2/addresses/:address_hash`}),` returns 200 instead of 404 for valid hashes which are not in the DB.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`/api/v2/tokens/:token_hash/instances`}),` owner’s ens_domain_name property now preloads the ens domain name.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`transaction hash and address hash are no longer mandatory in the `,_jsx(_components.code,{children:`txlistinternal`}),` API v1 endpoint`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`/metrics`}),` endpoint available on indexer pod (previously existed only on API pod)`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Upgrade Guide for Blockscout v7.0 and v8.0","description":"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.","icon":"arrow-up","href":"/setup/deployment/upgrade-guide-v7-0"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Getting Started","slug":"getting-started","depth":2,"children":[{"title":"1) Update backend ENV variables","slug":"1-update-backend-env-variables","depth":3,"children":[]},{"title":"2) Install backend","slug":"2-install-backend","depth":3,"children":[]},{"title":"3) Install frontend","slug":"3-install-frontend","depth":3,"children":[]},{"title":"4) Install microservices","slug":"4-install-microservices","depth":3,"children":[]}]},{"title":"Breaking Changes","slug":"breaking-changes","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"blockscout","siteName":"Blockscout","title":"Upgrade Guide for Blockscout v7.0 and v8.0 - Blockscout","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-26T09:46:30.127Z","originalFileLocation":"setup/deployment/upgrade-guide-v7-0.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Blockscout\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Upgrade Guide for Blockscout v7.0 and v8.0 - Blockscout\">\u003cmeta data-mint-head property=\"og:description\" content=\"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Blockscout\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://blockscout.mintlify.app/_mintlify/api/og/v2?division=Deployment\u0026amp;title=Upgrade+Guide+for+Blockscout+v7.0+and+v8.0\u0026amp;description=Step-by-step+upgrade+instructions+for+moving+existing+Blockscout+deployments+to+major+versions+7.0+and+8.0%2C+including+database+migrations+and+env+changes.\u0026amp;theme=d331589346b3caad8a76f8e1\u0026amp;signature=41f5e3ba381d5d8e3e35a0172c1d8a7c0b5ad8542b1dcaec16abc9d884ae3293\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Upgrade Guide for Blockscout v7.0 and v8.0 - Blockscout\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://blockscout.mintlify.app/_mintlify/api/og/v2?division=Deployment\u0026amp;title=Upgrade+Guide+for+Blockscout+v7.0+and+v8.0\u0026amp;description=Step-by-step+upgrade+instructions+for+moving+existing+Blockscout+deployments+to+major+versions+7.0+and+8.0%2C+including+database+migrations+and+env+changes.\u0026amp;theme=d331589346b3caad8a76f8e1\u0026amp;signature=41f5e3ba381d5d8e3e35a0172c1d8a7c0b5ad8542b1dcaec16abc9d884ae3293\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/blockscout/ngOBvEIaVmdqBQW8/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Blockscout\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5351db\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/setup/deployment/upgrade-guide-v7-0.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.blockscout.com/#organization\",\"name\":\"Blockscout\",\"url\":\"https://docs.blockscout.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/blockscout/cNJj4Zpe0FBD2sXC/logo/Color_BS_logo_hor.svg?fit=max\u0026auto=format\u0026n=cNJj4Zpe0FBD2sXC\u0026q=85\u0026s=7cffdcbb354b1aa090d9f7d3ca4f3452\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.blockscout.com#website\",\"name\":\"Blockscout\",\"url\":\"https://docs.blockscout.com\",\"publisher\":{\"@id\":\"https://docs.blockscout.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0#webpage\",\"url\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0\",\"name\":\"Upgrade Guide for Blockscout v7.0 and v8.0\",\"description\":\"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.\",\"dateModified\":\"2026-08-26T09:46:30.127Z\",\"isPartOf\":{\"@id\":\"https://docs.blockscout.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Setup and Run Blockscout\",\"item\":\"https://docs.blockscout.com/using-blockscout/autoscout\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deployment\",\"item\":\"https://docs.blockscout.com/setup/deployment\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Upgrade Guide for Blockscout v7.0 and v8.0\",\"item\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0#article\",\"headline\":\"Upgrade Guide for Blockscout v7.0 and v8.0\",\"name\":\"Upgrade Guide for Blockscout v7.0 and v8.0\",\"description\":\"Step-by-step upgrade instructions for moving existing Blockscout deployments to major versions 7.0 and 8.0, including database migrations and env changes.\",\"url\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0\",\"mainEntityOfPage\":{\"@id\":\"https://docs.blockscout.com/setup/deployment/upgrade-guide-v7-0#webpage\"},\"dateModified\":\"2026-08-26T09:46:30.127Z\",\"publisher\":{\"@id\":\"https://docs.blockscout.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.blockscout.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Blockscout\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Blockscout","nav":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/blockscout"},{"anchor":"Blog","icon":"newspaper","href":"https://www.blog.blockscout.com/"},{"anchor":"API Docs","icon":"cloud","href":"https://docs.blockscout.com/devs/apis"}]},"tabs":[{"tab":"Guides","pages":[{"group":"Get Started","pages":[{"title":"Blockscout blockchain explorer documentation","icon":"page-caret-up","href":""},{"title":"Using an Explorer","icon":"searchengin","sidebarTitle":"Using Blockscout","href":"/get-started/using-an-explorer"},{"title":"Integrating Blockscout into your Application","icon":"database","sidebarTitle":"Developer Integration","href":"/get-started/integrating-data"},{"title":"Running Blockscout","icon":"person-running","sidebarTitle":"Setup \u0026 Configuration","href":"/get-started/running-blockscout"},{"title":"Migration Guide","icon":"bird","href":"/get-started/migration-guide"},{"title":"API Rate Limits","icon":"traffic-light-go","href":"/rate-limits"}]},{"group":"Using Blockscout","pages":[{"group":"Overview","icon":"flag-checkered","pages":[{"title":"Blockscout UI Sections and Page Overviews","sidebarTitle":"UI Sections","href":"/using-blockscout/overviews"},{"title":"Block Explorer Glossary of Terms","href":"/using-blockscout/overviews/glossary-of-terms"},{"title":"Main Menu: Network, Blockchain, and API Navigation","href":"/using-blockscout/overviews/top-menu"},{"title":"Address Page: EOA Fields, Tabs, and Metrics","href":"/using-blockscout/overviews/address-page"},{"title":"Blocks Page: Block Height, Gas, and Rewards","href":"/using-blockscout/overviews/blocks"},{"title":"Transaction Fields Reference: Hash, Gas, Logs, State","href":"/using-blockscout/overviews/transaction-fields"},{"title":"Transaction Types: Blob, Coin, Contract, and Token","href":"/using-blockscout/overviews/transaction-types"},{"title":"Beacon Chain Withdrawal Views in Blockscout","href":"/using-blockscout/overviews/beacon-chain-withdrawal-views"},{"title":"Token Info Sources: CoinGecko and Verified Owners","href":"/using-blockscout/overviews/token-info"}]},{"group":"My Account","icon":"user","pages":[{"title":"My Account","sidebarTitle":"Overview","href":"/using-blockscout/my-account"},{"title":"Watchlist: Email Alerts for Address Activity","href":"/using-blockscout/my-account/watchlist"},{"title":"Private tags","href":"/using-blockscout/my-account/private-tags"},{"title":"Public Tags: Request and Report Address Labels","href":"/using-blockscout/my-account/public-tags"},{"title":"API keys","href":"/using-blockscout/my-account/api-keys"},{"title":"Custom ABI","href":"/using-blockscout/my-account/custom-abi"},{"group":"Verified addresses","icon":"check-circle","pages":[{"title":"Verified Addresses: Prove Smart Contract Ownership","sidebarTitle":"Overview","href":"/using-blockscout/my-account/verified-addresses"},{"title":"Copy and Sign Message for Address Verification","href":"/using-blockscout/my-account/verified-addresses/copy-and-sign-message"}]},{"title":"My Account setup for chain operators","href":"/using-blockscout/my-account/for-developers"}]},{"group":"Dappscout Apps Marketplace","icon":"store","pages":[{"title":"Dappscout Apps Marketplace","sidebarTitle":"Overview","href":"/using-blockscout/blockscout-apps"},{"title":"DApp Integration","href":"/using-blockscout/blockscout-apps/dapp-integration"}]},{"title":"Widgets: 3rd-Party Data on Address and Contract Pages","icon":"gear","href":"/using-blockscout/widgets"},{"group":"Essential Dapps","icon":"star","pages":[{"title":"Swap","sidebarTitle":"Swap","icon":"shuffle","href":"/using-blockscout/essential-dapps/swap"},{"title":"Revoke","icon":"square-minus","href":"/using-blockscout/essential-dapps/revoke"},{"title":"Multisend","icon":"manat-sign","href":"/using-blockscout/essential-dapps/multisend"}]},{"group":"Merits","icon":"award","pages":[{"title":"Merits","sidebarTitle":"Overview","href":"/using-blockscout/merits"},{"title":"Streak Rewards","href":"/using-blockscout/merits/streak-rewards"},{"title":"Activity Pass","href":"/using-blockscout/merits/activity-pass"},{"title":"Leaderboard","href":"/using-blockscout/merits/leaderboard"},{"title":"Badges","href":"/using-blockscout/merits/badges"},{"title":"Earn Merits when using Swap","href":"/using-blockscout/merits/earn-merits-when-using-swap"},{"title":"Merits FAQs","href":"/using-blockscout/merits/faqs"}]},{"title":"CSV Exports","icon":"file-csv","href":"/using-blockscout/export-to-csv"},{"group":"Token Support","icon":"coins","pages":[{"title":"Token Standards Supported by Blockscout","sidebarTitle":"Overview","href":"/using-blockscout/token-support"},{"title":"ERC-1155 Support: Multi-Token Indexing","href":"/using-blockscout/token-support/erc-1155-support"},{"title":"Adding and Updating Token Info on Blockscout","href":"/using-blockscout/token-info"}]}]},{"group":"Developer Support","pages":[{"title":"For Web3 Developers","icon":"user-astronaut","href":"/devs/for-web3-developers"},{"title":"Link to Blockscout","icon":{"name":"link","style":"regular","library":"fontawesome"},"href":"/devs/replace-links"},{"title":"Blockscout APIs","url":"/devs/apis","icon":"network-wired","href":"/devs/apis-redirect"},{"group":"Wallet as a Service (WaaS)","icon":"wallet","pages":[{"title":"What is WaaS","icon":"wallet","href":"/guides/developer-support/waas"},{"title":"Integration Guide","icon":"page-caret-up","href":"/guides/developer-support/wallet-as-a-service-waas/integration-guide"},{"title":"Current Integrations","icon":"check-double","href":"/guides/developer-support/wallet-as-a-service-waas/integrations"}]},{"group":"Smart Contract Verification","icon":"shield-halved","pages":[{"title":"Smart Contract Verification","sidebarTitle":"Overview","href":"/devs/verification"},{"title":"Verify contracts using the Blockscout UI","href":"/devs/verification/blockscout-ui"},{"group":"Hardhat Verification Plugin","pages":[{"title":"Verify contracts with the Hardhat plugin on Blockscout","sidebarTitle":"Overview","href":"/devs/verification/hardhat-verification-plugin"},{"title":"Sourcify plugin for Hardhat","href":"/devs/verification/hardhat-verification-plugin/sourcify-plugin-for-hardhat"}]},{"title":"Verify smart contracts with Foundry Forge","href":"/devs/verification/foundry-verification"},{"title":"Verify contracts via Sourcify on Blockscout","href":"/devs/verification/contracts-verification-via-sourcify"},{"title":"Verify contracts with the Remix IDE plugin","href":"/devs/verification/remix-verification"},{"title":"Verify contracts via thirdweb on Blockscout","href":"/devs/verification/verification-via-thirdweb"},{"title":"Stylus Verification","href":"/devs/verification/stylus-verification"},{"title":"Interacting with Smart Contracts","href":"/devs/verification/interacting-with-smart-contracts"},{"title":"Smart contract verification websocket events","href":"/devs/verification/websocket-notifications"}]},{"title":"MCP Server","icon":"code-fork","href":"/devs/mcp-server"},{"title":"Blockscout SDK","icon":"cube","href":"/devs/blockscout-sdk"},{"title":"Chainscout Chains List","icon":"list","href":"/devs/chainscout-chains-list"},{"title":"Blockscout Software Licence","icon":"book-atlas","href":"/devs/blockscout-license"}]},{"group":"Setup and Run Blockscout","pages":[{"group":"Autoscout 1-click Launchpad","icon":"rocket-launch","pages":[{"title":"Autoscout Explorer Launchpad","icon":"rocket","href":"/using-blockscout/autoscout"},{"title":"Creating an Instance","icon":"wand-magic-sparkles","href":"/using-blockscout/creating-an-instance"}]},{"group":"General Overview","icon":"gears","pages":[{"title":"Blockscout architecture overview","sidebarTitle":"Overview","icon":"info-circle","href":"/setup/information-and-settings"},{"title":"Separate Indexer, Web App, And API","href":"/setup/information-and-settings/separate-indexer-web-app-and-api"},{"title":"Umbrella Project Organization","href":"/setup/information-and-settings/umbrella-project"},{"title":"Indexer Architecture Overview","href":"/setup/information-and-settings/indexer-architecture-overview"},{"title":"ShareLock","href":"/setup/information-and-settings/sharelock"},{"title":"EVM Version Information","href":"/setup/information-and-settings/evm-version-information"}]},{"group":"Requirements","icon":"list-check","pages":[{"title":"Requirements","sidebarTitle":"Overview","href":"/setup/requirements"},{"title":"General backend requirements and prerequisites","href":"/setup/requirements/requirements"},{"title":"Backend/Frontend Compatibility Matrix","href":"/setup/requirements/back-front-compatibility-matrix"},{"title":"Hardware \u0026 Hosting Requirements","href":"/setup/requirements/resource-requirements"},{"title":"Database Storage Requirements","href":"/setup/requirements/database-storage-requirements"},{"title":"Client Setting Requirements","href":"/setup/requirements/client-settings"},{"title":"Node Tracing / JSON RPC Requirements","href":"/setup/requirements/node-tracing-json-rpc-requirements"},{"title":"L2 to L1 JSON-RPC method requests","href":"/setup/requirements/l2-greater-than-l1-json-rpc-method-requests"}]},{"group":"ENV Variables","icon":"sliders","pages":[{"title":"Blockscout Environment Variables Overview","sidebarTitle":"Overview","href":"/setup/env-variables"},{"title":"Backend environment variables reference for Blockscout","href":"/setup/env-variables/backend-env-variables"},{"title":"Backend ENVs for Chain-Specific Configuration","href":"/setup/env-variables/backend-envs-chain-specific"},{"title":"Backend ENVs for Blockscout Integrations","href":"/setup/env-variables/backend-envs-integrations"},{"group":"Frontend ENVs: Common","pages":[{"title":"Frontend ENVs: Common","sidebarTitle":"Overview","href":"/setup/env-variables/frontend-common-envs"},{"title":"Frontend environment variables reference","sidebarTitle":"Frontend ENVs","href":"/setup/env-variables/frontend-common-envs/envs"},{"title":"Deprecated Frontend ENVs","href":"/setup/env-variables/frontend-common-envs/deprecated-envs"}]},{"group":"Deprecated Backend ENVs","pages":[{"title":"Deprecated Backend ENVs","sidebarTitle":"Overview","href":"/setup/env-variables/deprecated-env-variables"}]}]},{"group":"Deployment","icon":"rocket","pages":[{"title":"Blockscout Deployment Methods and Options","sidebarTitle":"Overview","href":"/setup/deployment"},{"group":"Manual Deployment Guide","pages":[{"title":"Manual Deployment Guide for Blockscout","sidebarTitle":"Overview","href":"/setup/deployment/manual-deployment-guide"},{"title":"Manual Blockscout Setup on Ubuntu","href":"/setup/deployment/manual-deployment-guide/ubuntu-setup"},{"title":"Manual Blockscout Setup on macOS","href":"/setup/deployment/manual-deployment-guide/macos-setup"}]},{"title":"Docker Compose Deployment for Blockscout","icon":"box-open","href":"/setup/deployment/docker-compose-deployment"},{"title":"Kubernetes Deployment with Helm Charts","icon":"server","href":"/setup/deployment/kubernetes-deployment"},{"title":"Deploy Blockscout on Rollup Chains","icon":"layer-group","href":"/setup/deployment/rollup-deployment"},{"title":"Deploy Blockscout for Cosmos-Based Chains","icon":"globe","href":"/setup/deployment/cosmos-based-chains"},{"title":"Deploy Blockscout on Avalanche L1 Chains","description":"Deploy Blockscout as a built-in add-on with Ava Labs' avalanche-deploy Infrastructure as Code toolkit for Avalanche L1 blockchains and validators.","icon":"mountain","href":"/setup/deployment/avalanche-chains"},{"title":"Upgrade Guide for Blockscout v7.0 and v8.0","icon":"arrow-up","href":"/setup/deployment/upgrade-guide-v7-0"},{"group":"Frontend Migration","icon":"box-open","pages":[{"title":"Blockscout Frontend Migration Overview","description":"Choose a migration path from the legacy Blockscout UI to the new React frontend using Docker Compose, separate services, or a customized backend setup.","sidebarTitle":"Overview","href":"/setup/deployment/frontend-migration"},{"title":"All-in-One Docker Compose Frontend Migration","href":"/setup/deployment/frontend-migration/all-in-one-container"},{"title":"Frontend Migration with Separate Frontend","href":"/setup/deployment/frontend-migration/separate-frontend"},{"title":"Frontend Migration with Customized Backend","href":"/setup/deployment/frontend-migration/customized-backend"},{"title":"NGINX Proxy Setup for Frontend Migration","href":"/setup/deployment/frontend-migration/proxy-setup"},{"title":"Frontend Migration FAQs","href":"/setup/deployment/frontend-migration/faqs"}]},{"group":"Manual Deployment (backend + old UI)","icon":"hands","pages":[{"title":"Manual Deployment: Backend and Legacy UI","sidebarTitle":"Overview","href":"/setup/deployment/manual-old-ui"},{"title":"Clean a Previous Manual Blockscout Instance","href":"/setup/deployment/manual-old-ui/check-your-manual-deployment-instance"}]},{"title":"Terraform Deployment for Polygon Supernets","icon":"earth-asia","href":"/setup/deployment/terraform-deployment"},{"group":"Ansible Deployment (AWS Cloud)","icon":"cloud","pages":[{"title":"Ansible + Terraform Deployment Overview","href":"/setup/deployment/ansible-deployment/overview"},{"title":"Ansible Deployment Prerequisites","href":"/setup/deployment/ansible-deployment/prerequisites"},{"group":"AWS Permissions \u0026 Settings","pages":[{"title":"AWS Permissions and Settings for Blockscout Deploy","sidebarTitle":"Overview","href":"/setup/deployment/ansible-deployment/aws-permissions"},{"title":"Creating an AWS Secret Access Key Pair for CLI","href":"/setup/deployment/ansible-deployment/aws-permissions/creating-a-secret-key-pair"},{"title":"Login with AWS CLI for Blockscout Terraform Deploy","href":"/setup/deployment/ansible-deployment/aws-permissions/login-with-aws-cli"},{"title":"Creating An AWS Certificate For SSL","href":"/setup/deployment/ansible-deployment/aws-permissions/creating-an-aws-certificate-for-ssl"},{"title":"Manually Clean Terraform Instances on AWS","href":"/setup/deployment/ansible-deployment/aws-permissions/manually-cleaning-terraform-related-instances"}]},{"title":"Ansible Deployment Variables Reference","href":"/setup/deployment/ansible-deployment/variables"},{"title":"Provision Blockscout Infrastructure on AWS","href":"/setup/deployment/ansible-deployment/deploying-the-blockscout-infrastructure"},{"title":"Deploy Blockscout Application with Ansible","href":"/setup/deployment/ansible-deployment/deploying-blockscout"},{"title":"Destroy Blockscout AWS Infrastructure","href":"/setup/deployment/ansible-deployment/destroying-provisioned-infrastructure"},{"title":"Ansible Common Additional Tasks","href":"/setup/deployment/ansible-deployment/common-additional-tasks"},{"title":"Ansible Deployment Common Errors and FAQ","href":"/setup/deployment/ansible-deployment/common-errors-and-questions"},{"group":"AWS Marketplace (deprecated)","icon":"store-alt","pages":[{"title":"Blockscout AWS Marketplace Listing (Deprecated)","sidebarTitle":"Overview","href":"/setup/deployment/ansible-deployment/aws-marketplace"},{"title":"AWS Marketplace Deployment Overview for Blockscout","icon":"store-alt","href":"/setup/deployment/ansible-deployment/aws-marketplace/overview"},{"title":"Blockscout CloudFormation Template and AWS Topology","icon":"project-diagram","href":"/setup/deployment/ansible-deployment/aws-marketplace/cloudformation-template"},{"title":"AWS Marketplace Prerequisites and Install Parameters","icon":"cogs","href":"/setup/deployment/ansible-deployment/aws-marketplace/aws-marketplace-installation"},{"title":"Install Blockscout from AWS Marketplace Listing","icon":"shopping-cart","href":"/setup/deployment/ansible-deployment/aws-marketplace/install-from-aws-marketplace"},{"title":"AWS EC2 Archive Node Setup with OpenEthereum","icon":"server","href":"/setup/deployment/ansible-deployment/aws-marketplace/aws-ec2-archive-node-setup"},{"title":"Updating and Redeploying Blockscout on AWS","icon":"sync","href":"/setup/deployment/ansible-deployment/aws-marketplace/updating-and-redeploying-in-aws"},{"title":"Customizing CSS on Blockscout AWS Marketplace","icon":"paint-brush","href":"/setup/deployment/ansible-deployment/aws-marketplace/customizing-css"}]}]}]},{"group":"Microservices","icon":"gears","pages":[{"title":"Microservices","sidebarTitle":"Overview","href":"/setup/microservices"},{"title":"Blockscout ENS (BENS) Name Service Integration","href":"/setup/microservices/blockscout-ens-bens-name-service-integration"},{"title":"Smart contract verification microservice","href":"/setup/microservices/smart-contract-verification"}]},{"group":"Configuration Options","icon":"wrench","pages":[{"title":"Configuration Options","sidebarTitle":"Overview","href":"/setup/configuration-options"},{"title":"Blockscout Admin Panel Usage for Hosted Explorers","href":"/setup/configuration-options/admin-panel-usage"},{"title":"Automating Blockscout Restarts with HEART_COMMAND","href":"/setup/configuration-options/automating-restarts"},{"title":"Circle CI Build Updates for Blockscout","href":"/setup/configuration-options/circle-ci-updates"},{"title":"Charts and Stats Microservice for Blockscout","href":"/setup/configuration-options/charts-and-stats"},{"title":"Coin, Token, and Historical Exchange Rates","href":"/setup/configuration-options/exchange-rates"},{"title":"HAProxy Settings for blockscout.com Routing","href":"/setup/configuration-options/haproxy-settings-for-blockscout-com"},{"title":"Blockscout Logger Configs and Log Rotation","href":"/setup/configuration-options/logger-configs"},{"title":"Blockscout Indexer Memory Usage and Limits","href":"/setup/configuration-options/memory-usage"},{"title":"Prometheus and Grafana Metrics for Blockscout","href":"/setup/configuration-options/untitled-2"},{"title":"My Account Settings for Blockscout Personalization","href":"/setup/configuration-options/my-account-settings"},{"title":"reCAPTCHA Setup for Blockscout CSV and Account","href":"/setup/configuration-options/recaptcha"},{"title":"Reown / WalletConnect Project ID for Contract R/W","href":"/setup/configuration-options/walletconnect-project-id-for-contract-read-write"},{"title":"Sorting and Cursor-Based Pagination in Blockscout","href":"/setup/configuration-options/sorting-and-pagination"},{"title":"Application Tracing with Spandex and Datadog","href":"/setup/configuration-options/tracing"}]},{"group":"Indexing","icon":"bars-staggered","pages":[{"title":"Indexing","sidebarTitle":"Overview","href":"/setup/indexing"},{"title":"How Do I Fix Indexer Timeouts?","href":"/setup/indexing/how-do-i-fix-indexer-timeouts"},{"title":"Fix indexer memory errors by adjusting memory usage","href":"/setup/indexing/how-do-i-update-memory-consumption-to-fix-indexer-memory-errors"}]},{"title":"Celestia Node and Indexer for Blockscout","icon":"globe","href":"/setup/celestia-node-indexer"},{"title":"Testing","icon":"vial","href":"/setup/testing"},{"title":"Blockscout Database Schema Reference","icon":"table","href":"/setup/db-schema"}]},{"group":"FAQs","pages":[{"title":"User FAQs","icon":"circle-question","href":"/faqs/faqs"},{"title":"Developer FAQs","icon":{"name":"question-circle","style":"regular","library":"fontawesome"},"href":"/faqs/developer-faqs"}]},{"group":"Resources","pages":[{"title":"EaaS: Hosting with Blockscout","icon":"star","href":"/resources/premium-features"},{"title":"Contributing to Blockscout","icon":"handshake-angle","href":"/resources/contributing-to-blockscout"},{"title":"Security Program","icon":"bug","href":"/resources/security-program"},{"title":"Media Kit","icon":"palette","href":"/resources/media-kit"},{"group":"Release Info","pages":[{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"notes","href":"/resources/release-notes"},{"title":"v12.0.0 - Breaking changes and API updates","href":"/blockscout-v12-0-0-api-updates-and-breaking-changes"}]},{"title":"Discord Channel","url":"https://discord.gg/blockscout","href":"/discord-channel"},{"title":"Discussion","url":"https://github.com/blockscout/blockscout/discussions","href":"/discussion"},{"title":"GitHub Repo","url":"https://github.com/poanetwork/blockscout","href":"/github-repo"}]}]},{"tab":"Blockscout API","pages":[{"title":"Blockscout API","href":"/devs/apis"}]},{"tab":"About Blockscout","pages":[{"title":"About Blockscout","href":"/about/features"}]}]},"basePath":"","title":"Upgrade Guide for Blockscout v7.0 and v8.0 - Blockscout","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":[],"chunks":[]}