Code Monkey home page Code Monkey logo

blockscout's Introduction

BlockScout Overview

Original https://github.com/Azure-Samples/blockchain/blob/master/ledger/template/ethereum-on-azure/technology-samples/blockscout/README.md

BlockScout is an open-source, real-time Ethereum block explorer which enables users to inspect and analyze blocks, transactions and accounts on any EVM (Ethereum Virtual Machine) blockchain network.

To learn more about BlockScout, please visit their GitHub.

BlockScout Setup

The following steps will allow you to enable BlockScout on Microsoft's Ethereum Proof-of-Authority Consortium Template.

Prerequisites

The only requirement is that you have already successfully deployed the Ethereum Proof-Of-Authority template in Azure. If you have yet to deploy an instance, please refer to the documentation before getting started.

Azure VM Setup

In order to deploy BlockScout, a separate Linux Virtual Machine must first be created. Either within the existing PoA Resource Group or within another Resource Group, select the "+ Add" button and search for "Ubuntu Server 16.04 LTS", then expand the resource and select "Create".

Ubuntu Server 16.04 LTS

  1. On the first blade, either select the existing Resource Group or a new Resource Group if you prefer.
  2. Next, choose an appropriate size for the Virtual Machine (B2ms should suffice).
  3. On the Settings blade, be sure to choose the following settings:
  • Virtual Network & Subnet -> Select Existing Virtual Network in the PoA Resource Group

  • Public IP Address -> Create a new Public IP Address for the VM

  • Network Security Group -> Select Advanced and then choose the existing Network Security Group in the PoA Resource Group

  • Diagnostics Storage Account -> Optional: Select the existing Storage Account in the Resource Group.

    See the following deployment settings example:

    VM Settings

  1. Select the "Create" button to complete the Virtual Machine deployment.

Network Security Group Rule

  1. Navigate to the existing Network Security Group within the PoA Resource Group.
  2. Select the "Inbound Security Rules" blade and then select the "+ Add" button.
  3. Add a new Inbound Security Rule for Port 80 as follows:

NSG Rules

Deployment Script

  1. Make an SSH connection to the newly created VM and ensure you are in the following directory: "home/{$USER}"
  2. Download a copy of the deployment shell script install_blockscout.sh.
    • curl -O https://raw.githubusercontent.com/bellaj/blockscout/master/install_blockscout.sh
    • Ensure you have the appropriate permissions to run the script: chmod +x install_blockscout.sh
  3. Execute the script using the following parameters:
Parameter Description
RPC Endpoint This is the URL of the RPC Endpoint Balancer.
WebSocket Endpoint* This must use the IP Address of a specific node within the PoA Consortium (not the Load Balancer IP Address).
Database Password This will be the password to use when generating the BlockScout PostgreSQL database.

*The WebSocket IP Address is the Private IP Address of a specific node when deploying behind a VPN with a VNet Gateway.

Example:

./install_blockscout.sh "http://192.168.0.1:8540" "ws://192.168.0.2:8547" "Password123!"

Deployment Script

  1. Wait approximately 5-10 minutes for the script to complete execution.

(Optional) Add Custom DNS Name

  1. You can optionally add a Custom DNS for the BlockScout site by navigating to the IP Address for the newly created VM.
  2. Navigate to the "Configuration" blade and under "DNS name label", choose an appropriate DNS name.

Custom DNS

BlockScout UI

Once the deployment script has successfully completed, you should be able to navigate to either the Public IP Address or Custom DNS name to view the BlockScout user interface.

BlockScout UI

(Optional) Customize Theme Colors

If you would like to customize the theme, follow these steps after a successful deployment:

  1. Stop the BlockScout service: sudo systemctl stop blockscout.service.
  2. Navigate to blockscout/apps/block_scout_web/assets/css/theme.
  3. Edit _poa_variables.scss with appropriate theme colors.
  4. Rebuild the static assets: sudo npm run-script deploy (from blockscout/apps/block_scout_web/assets directory).
  5. Restart the BlockScout service: sudo systemctl start blockscout.service.

The BlockScout application will now be running with the designated theme changes.

Themed BlockScout UI

blockscout's People

Contributors

kronicdeth avatar ayrat555 avatar acravenho avatar jimmay5469 avatar katibest avatar vbaranov avatar arthurra avatar stamates avatar gabitoesmiapodo avatar feliperenan avatar tmecklem avatar gustavosantosfe avatar ohrite avatar zachdaniel avatar amandasposito avatar sabondano avatar lucasnar avatar goodsoft avatar mul1sh avatar alexgaribay avatar fvictorio avatar konstantinzolotarev avatar bitwalker avatar saneery avatar chrismccord avatar svenski123 avatar andogro avatar bellaj avatar w-sanches avatar robertoschneiders avatar

Stargazers

Vitus avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

vitustockholm

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.