mirror of
https://github.com/vacp2p/linea-besu.git
synced 2026-01-08 20:47:59 -05:00
Added content on deploying for production (#1774)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
This commit is contained in:
@@ -6,6 +6,9 @@ description: Setting up and using onchain Permissioning
|
||||
The following steps describe bootstrapping a local permissioned network using a Pantheon node and a
|
||||
development server to run the Permissioning Management Dapp.
|
||||
|
||||
!!! note
|
||||
In production, a webserver is required to [host the Permissioning Management Dapp](Production.md).
|
||||
|
||||
To start a network with onchain permissioning:
|
||||
|
||||
1. [Install pre-requisites](#pre-requisites)
|
||||
@@ -13,6 +16,7 @@ To start a network with onchain permissioning:
|
||||
1. [Set environment variables](#set-environment-variables)
|
||||
1. [Start first node with onchain permissioning and the JSON-RPC HTTP service enabled](#onchain-permissioning-command-line-options)
|
||||
1. [Clone the permissioning contracts repository and install dependencies](#clone-contracts-and-install-dependencies)
|
||||
1. [Build project](#build-project)
|
||||
1. [Deploy the permissioning contracts](#deploy-contracts)
|
||||
1. [Start the development server for the Permissioning Management Dapp](#start-the-permissioning-management-dapp)
|
||||
1. [Add the first node to the nodes whitelist](#update-nodes-whitelist)
|
||||
@@ -101,6 +105,9 @@ to enable onchain nodes permissioning
|
||||
* [--permissions-nodes-contract-address](../../Reference/Pantheon-CLI-Syntax.md#permissions-nodes-contract-address)
|
||||
set to the address of the Node Ingress contract in the genesis file (`"0x0000000000000000000000000000000000009999"`)
|
||||
|
||||
Start your first node with command line options to enable onchain permissioning and the JSON-RPC HTTP host and port
|
||||
matching environment variable `PANTHEON_NODE_PERM_ENDPOINT`.
|
||||
|
||||
## Clone Project and Install Dependencies
|
||||
|
||||
1. Clone the `permissioning-smart-contracts` repository:
|
||||
@@ -139,6 +146,9 @@ The migration logs the addresses of the Admin and Rules contracts.
|
||||
|
||||
## Start the Development Server for the Permissioning Management Dapp
|
||||
|
||||
!!! note
|
||||
In production, a webserver is required to [host the Permissioning Management Dapp](Production.md).
|
||||
|
||||
1. In the `permissioning-smart-contracts` directory, start the web server serving the Dapp:
|
||||
|
||||
```bash
|
||||
|
||||
@@ -7,7 +7,7 @@ Onchain permissioning uses smart contracts to store and maintain the node, accou
|
||||
Using onchain permissioning enables all nodes to read the whitelists from a single source, the blockchain.
|
||||
|
||||
!!! important
|
||||
The dependency chain for our implementation of onchain permissioning includes [web3j](https://github.com/web3j/web3j) which is
|
||||
The dependency chain for our implementation of onchain permissioning includes [web3js](https://github.com/ethereum/web3.js/) which is
|
||||
LGPL licensed.
|
||||
|
||||
## Permissioning Contracts
|
||||
@@ -24,6 +24,10 @@ Node Rules and Account Rules contracts. The Ingress contracts are deployed to st
|
||||
* Admin - stores the list of admin accounts and admin list operations (for example, add and remove). There is
|
||||
one list of admin accounts for node and accounts.
|
||||
|
||||
!!! note
|
||||
The permissioning smart contracts are currently in the process of going through a third party audit.
|
||||
Please [contact us](https://pegasys.tech/contact/) before using in a production environment.
|
||||
|
||||
## Permissioning Management Dapp
|
||||
|
||||
The [Permissioning Management Dapp](Getting-Started-Onchain-Permissioning.md) is provided to view
|
||||
@@ -37,13 +41,11 @@ and maintain the whitelists.
|
||||
|
||||
Permissioning implements three whitelists:
|
||||
|
||||
* [Accounts](Getting-Started-Onchain-Permissioning.md#update-accounts-or-admin-accounts-whitelists) can submit
|
||||
transactions to the network
|
||||
* Accounts can submit transactions to the network
|
||||
|
||||
* [Nodes](Getting-Started-Onchain-Permissioning.md#update-nodes-whitelist) can participate in the network
|
||||
* Nodes can participate in the network
|
||||
|
||||
* [Admins](Getting-Started-Onchain-Permissioning.md#update-accounts-or-admin-accounts-whitelists) are accounts that
|
||||
can update the accounts and nodes whitelists
|
||||
* Admins are accounts that can update the accounts and nodes whitelists
|
||||
|
||||
## Bootnodes
|
||||
|
||||
|
||||
29
docs/Permissions/Onchain-Permissioning/Production.md
Normal file
29
docs/Permissions/Onchain-Permissioning/Production.md
Normal file
@@ -0,0 +1,29 @@
|
||||
description: Deploying Permissioning Management Dapp for production
|
||||
<!--- END of page meta data -->
|
||||
|
||||
# Deploying Permissioning Management Dapp for Production
|
||||
|
||||
To deploy the Permissioning Management dapp for production:
|
||||
|
||||
1. Get the most recent release (tarball or zip) from the [projects release page](https://github.com/PegaSysEng/permissioning-smart-contracts/releases/latest).
|
||||
|
||||
1. Unpack the distribution into a directory available to your webserver.
|
||||
|
||||
1. In the root of the directory to which the distribution was unpacked, add a file called `config.json` replacing
|
||||
the placeholders.
|
||||
|
||||
```json tab="config.json"
|
||||
{
|
||||
"accountIngressAddress": "<Address of the account ingress contract>",
|
||||
"nodeIngressAddress": "<Address of the node ingress contract>",
|
||||
"networkId": "<ID of your Ethereum network>"
|
||||
}
|
||||
```
|
||||
|
||||
1. On your webserver, host the contents of the directory as static files and direct root requests to `index.html`
|
||||
|
||||
## Starting a Production Permissioned Network
|
||||
|
||||
Follow the procedure as for [Getting Started with Onchain Perissioning](Getting-Started-Onchain-Permissioning.md)
|
||||
but do not perform the steps using `yarn` to install, build, and start the development server. Instead follow the procedure above to
|
||||
deploy the Permissioning Management dapp to your webserver.
|
||||
Reference in New Issue
Block a user