Skip to content

Commit e5447ee

Browse files
commiting to appease plugin
1 parent 0b2ebf0 commit e5447ee

File tree

5 files changed

+44
-63
lines changed

5 files changed

+44
-63
lines changed

docs/cdk/get-started/deploy-rollup/create-wallets.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
2-
Continue with the **third step** of this deployment-guide where you create wallets and deploy contracts.
3-
4-
## Deploying contracts
1+
## Clone the contracts
52

63
Clone the contracts from our [github repository](https://github.com/0xPolygonHermez/zkevm-contracts):
74

@@ -12,7 +9,7 @@ cd ~/zkevm-contracts
129
npm i
1310
```
1411

15-
### Create wallets
12+
## Create wallets
1613

1714
Next, create a `wallets.js` file with the following content:
1815

@@ -54,7 +51,7 @@ Generate the wallets using below command:
5451
node wallets.js | tee wallets.txt
5552
```
5653

57-
### Prepare deploy configuration
54+
## Prepare deploy configuration
5855

5956
Edit the environment variables:
6057

@@ -119,7 +116,7 @@ Only fill in the commented fields in your `deploy_parameters.json` file:
119116
!!!caution
120117
Get some GöETH
121118

122-
You will need to send 0.5 GöETH to the Deployment Address wallet listed in `wallets.txt`.
119+
You will need to send 0.5 GöETH to the deployment address wallet listed in `wallets.txt`.
123120

124121
Adjust the `gasPrice` according to the network status. For Goerli, you can check it with the following command, where you insert your Etherscan API key, note this can sometimes be 0 for testnet:
125122

@@ -134,7 +131,7 @@ vim ~/zkevm-contracts/deployment/helpers/deployment-helpers.js
134131
const gasPriceKeylessDeployment = "50"; // 50 gwei
135132
```
136133

137-
### Deploy contracts
134+
## Deploy contracts
138135

139136
```bash
140137
cd ~/zkevm-contracts/
@@ -152,4 +149,4 @@ You will see in the logs the verification of each smart contract deployed, but y
152149
```html
153150
https://goerli.etherscan.io/address/0x -> Put the Deployment Address wallet from
154151
wallets.txt
155-
```
152+
```

docs/cdk/get-started/deploy-rollup/deploy-zknode.md renamed to docs/cdk/get-started/deploy-rollup/deploy-node.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11

2-
Continue with the **fourth step** of this deployment-guide where you deploy the zkNode.
3-
4-
## zkNode deployment
5-
62
First, create the following directories:
73

84
```bash

docs/cdk/get-started/deploy-rollup/install-dependencies.md

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
2-
Continue with the **second step** of this deployment-guide where you install dependencies and download mainnet files.
3-
4-
## Install dependencies
5-
61
First, install base dependencies:
72

83
```bash
@@ -43,7 +38,7 @@ Lastly, confirm the installation of Golang by running this command: `$ go versio
4338

4439
## Download/extract mainnet files
4540

46-
Next step in the process is to download the zkEVM Mainnet files. This download is over **70GB**, so it's recommended to run the download in a tmux/screen session to handle any network interruptions.
41+
Next step in the process is to download the mainnet files. This download is over **70GB**, so it's recommended to run the download in a tmux/screen session to handle any network interruptions.
4742

4843
The files are located in several urls, so a script can be used as shown below:
4944

@@ -68,11 +63,6 @@ for url in "${urls[@]}"; do
6863
done
6964
```
7065

71-
<!-- ```bash
72-
aria2c -x6 -s6 "https://de012a78750e59b808d922b39535e862.s3.eu-west-1.amazonaws.com/v1.1.0-rc.1-fork.4.tgz"
73-
pv v1.1.0-rc.1-fork.4.tgz | tar xzf -
74-
``` -->
75-
7666
Once the download is finished, you should extract the files using the following command:
7767

7868
```bash

docs/cdk/get-started/deploy-rollup/intro.md

Lines changed: 33 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,38 @@
1-
Welcome to your step-by-step guide to implementing a full Polygon zkEVM network on the Goërli testnet as the L1 network.
1+
Welcome to your step-by-step guide to implementing a full CDK zkRollup EVM-compatible network on the Goërli testnet as the L1 network.
22

3-
Users with good internet connection can schedule a 2-hour window for completing the entire process in one go.
4-
5-
However, in order to allow for in-between breaks, the process is aesthetically split into 6 steps.
6-
7-
- [**First step**](index.md): Preliminary setup, checking system requirements and prerequisites variables.
3+
- [**First step**](intro.md): Preliminary setup, checking system requirements, and prerequisite variables.
84

95
- [**Second step**](install-dependencies.md): Installing dependencies and downloading mainnet files.
106

117
- [**Third step**](create-wallets.md): Creating wallets and deploying contracts.
128

13-
- [**Fourth step**](deploy-zknode.md): Deployment of the zkNode.
9+
- [**Fourth step**](deploy-node.md): Deployment of the zkRollup EVM-compatible node.
1410

15-
- [**Fifth step**](configure-prover.md): Configuring the Prover and services.
11+
- [**Fifth step**](configure-prover.md): Configuring the prover and services.
1612

1713
- [**Sixth step**](setup-goerli-node.md): Activating forced txs and bridging/claiming assets.
1814

1915
!!!caution
20-
Instructions in this document are subject to frequent updates as the zkEVM software is still in early development stages.
21-
22-
Please report [here](https://support.polygon.technology/support/tickets/new) or reach out to our [support team on Discord](https://discord.com/invite/0xPolygon) if you encounter any issues.
16+
- Instructions in this document are subject to frequent updates as the software is still in early development stages.
17+
- Please [open a ticket](https://support.polygon.technology/support/tickets/new) or reach out to our [support team on Discord](https://discord.com/invite/0xPolygon) if you encounter any issues.
2318

2419
## Overview and setting up
2520

26-
Implementing the full stack Polygon zkEVM involves more than just running an RPC zkNode or the Prover to validate batches, and deploying Smart Contracts. In its entirety, it encompasses all these processes and more.
21+
Implementing the full stack Polygon CDK zkRollup EVM-compatible network involves more than just running an RPC zkNode or the Prover to validate batches and deploy smart contracts. In its entirety, it encompasses all these processes and more.
2722

28-
The common rollup actors, mainly from the zkNode view, are the Sequencer, the Aggregator, the Synchroniser and the JSON RPC node. All these affect the L2 State.
23+
The common rollup actors are the sequencer, the aggregator, the synchroniser and the JSON RPC node. All these affect the L2 state.
2924

30-
Also, the Aggregator uses the Prover to avail verifiable proofs of sequenced batches. And the sequenced batches are composed of transactions taken from the Pool DB.
25+
Also, the aggregator uses the prover to avail verifiable proofs of sequenced batches. And the sequenced batches are composed of transactions taken from the pool database.
3126

32-
This highlights just a few main components. The rest of the zkEVM components and those working in the background, are listed in the next subsection.
27+
This highlights just a few main components. The rest of the components and those working in the background, are listed in the next subsection.
3328

34-
### Why you need docker
29+
### Why you need Docker
3530

36-
The modular design of the zkEVM allows for most components to be separately instantiated, and we therefore run each of these instances in a separate Docker container.
31+
The modular design of the CDK zkRollup EVM-compatible network allows for most components to be separately instantiated, and we therefore run each of these instances in a separate Docker container.
3732

38-
The below table enlists all the zkEVM components/services and their corresponding container-names.
33+
The below table enlists all the CDK zkRollup EVM-compatible components/services and their corresponding container-names.
3934

40-
Our zkEVM deployment-guide provides CLI commands to automatically create these Docker containers.
35+
Our CDK zkRollup EVM-compatible network deployment-guide provides CLI commands to automatically create these Docker containers.
4136

4237
| Component | Container | Brief\ Description |
4338
| :---------------- | :------------------- | ------------------------------------------------------------ |
@@ -52,39 +47,39 @@ Our zkEVM deployment-guide provides CLI commands to automatically create these D
5247
| Etherman | zkevm-eth-tx-manager | Implements methods for all interactions with the L1 network and smart contracts. |
5348
| Bridge UI | zkevm-bridge-ui | User-Interface for bridging ERC-20 tokens between L2 and L1 or another L2. |
5449
| Bridge DB | zkevm-bridge-db | A database for storing Bridge-related transactions data. |
55-
| Bridge Service | zkevm-bridge-service | A backend service enabling clients like the web UI to interact with Bridge smart contracts. |
56-
| zkEVM Explorer | zkevm-explorer-l2 | L2 network's Block explorer. i.e., The zkEVM Etherscan [Explorer](https://zkevm.polygonscan.com). |
57-
| zkEVM Explorer DB | zkevm-explorer-l2-db | Database for the L2 network's Block explorer. i.e., Where all the zkEVM Etherscan Explorer queries are made. |
58-
| Gas Pricer | zkevm-l2gaspricer | Responsible for suggesting the gas price for the L2 network fees. |
59-
| Goërli Execution | goerli-execution | L1 node's execution layer. |
60-
| Goërli Consensus | goerli-consensus | L1 node's consensus layer. |
50+
| Bridge service | zkevm-bridge-service | A backend service enabling clients like the web UI to interact with Bridge smart contracts. |
51+
| zkEVM explorer | zkevm-explorer-l2 | L2 network's Block explorer. i.e., The zkEVM Etherscan [Explorer](https://zkevm.polygonscan.com). |
52+
| zkEVM explorer DB | zkevm-explorer-l2-db | Database for the L2 network's Block explorer. i.e., Where all the zkEVM Etherscan Explorer queries are made. |
53+
| Gas pricer | zkevm-l2gaspricer | Responsible for suggesting the gas price for the L2 network fees. |
54+
| Goërli execution | goerli-execution | L1 node's execution layer. |
55+
| Goërli consensus | goerli-consensus | L1 node's consensus layer. |
6156

6257
!!!info
6358
The **first step** of this deployment-guide begins here!
6459

6560
### Preliminary setup
6661

67-
Implementing the Polygon zkEVM requires either a Linux machine or a virtual machine running Linux as a Guest OS.
62+
Implementing the Polygon CDK zkRollup EVM-compatible network requires either a Linux machine or a virtual machine running Linux as a Guest OS.
6863

69-
Since the zkEVM implementation involves running Docker containers, ensure that a Docker daemon is installed on your machine.
64+
Since the CDK zkRollup implementation involves running Docker containers, ensure that a Docker daemon is installed on your machine.
7065

7166
Here's how to get setup;
7267

7368
For Linux machines, install the Docker engine directly on the machine.
7469

75-
For other Operating Systems (MacOS, Windows), this is achieved in 4 steps, executed in the given sequential order;
70+
For other operating systems (MacOS, Windows), this is achieved in 4 steps, executed in the given sequential order;
7671

7772
- Install a hypervisor, e.g., VirtualBox, VMware Fusion (MacOS), VMware Workstation (Windows), VMware ESXi (Bare Metal Hypervisor).
7873
- Setup a virtual machine, e.g., if you are using VirtualBox, which is open-source, Vagrant is the quickest way to automatically setup a virtual machine and also set up ssh private/public keys.
7974
- Install Linux as Guest OS, preferably the latest version of Ubuntu Linux.
8075
- Install [Docker](https://docs.docker.com/desktop/install/linux-install/).
8176

82-
Search the internet for quick guides on creating virtual machines. Here's an example of a video on [How to Create a Linux Virtual Machine on a Mac](https://www.youtube.com/watch?v=KAd7FafXfJQ).
77+
Search the internet for quick guides on creating virtual machines. Here's an example of a video on [how to create a Linux VM on a Mac](https://www.youtube.com/watch?v=KAd7FafXfJQ).
8378

84-
In order to run multiple Docker containers, an extra tool called **docker compose** needs to be [downloaded and installed](https://docs.docker.com/compose/install/linux/). As you will see, a YAML file is used for configuring all zkEVM services.
79+
In order to run multiple Docker containers, an extra tool called **docker compose** needs to be [downloaded and installed](https://docs.docker.com/compose/install/linux/). As you will see, a YAML file is used for configuring all CDK zkRollup services.
8580

8681
!!!info
87-
One more thing, since the Prover is resource-heavy, you will need to run its container externally. Access to cloud computing services such as AWS EC2 or DigitalOcean will be required.
82+
One more thing, since the prover is resource-heavy, you will need to run its container externally. Access to cloud computing services such as AWS EC2 or DigitalOcean will be required.
8883

8984
### Prerequisites
9085

@@ -104,32 +99,32 @@ See this guide here for [**setting up your own Goërli node**](setup-goerli-node
10499

105100
#### Computing requirements
106101

107-
Keep in mind that the mainnet files you will be downloading are 70GB big.
102+
Keep in mind that the mainnet files you will be downloading are 70GB in size.
108103

109-
If the Prover is the only container you will be running externally in a cloud, then it is preferable to have a minimum 300GB of storage in the primary machine.
104+
If the prover is the only container you will be running externally in a cloud, then it is preferable to have a minimum 300GB of storage in the primary machine.
110105

111106
Depending on the user's resources, the zkEVM network can be implemented with either the actual full prover or the mock prover.
112107

113108
The full prover is resource-intensive as it utilizes the exact same proving stack employed in the real and live zkEVM network.
114109

115110
!!!info
116-
The full Prover's system requirements are:
111+
The full prover's system requirements are:
117112

118113
- 96-core CPU
119114
- Minimum 768GB RAM
120115

121-
The Mock Prover is a dummy prover which simply adds a "Valid ✅" checkmark to every batch.
116+
The mock prover is a dummy prover which simply adds a "Valid ✅" checkmark to every batch.
122117

123118
!!!info
124-
The mock Prover, on the other hand, only requires:
119+
The mock prover, on the other hand, only requires:
125120

126121
- 4-core CPU
127122
- 8GB RAM (16GB recommended)
128123

129124
As an example, the equivalent [AWS EC2s](https://aws.amazon.com/ec2/instance-types/r6a/) for each of these two provers are as follows:
130125

131-
- r6a.xlarge for mock Prover
132-
- r6a.24xlarge for full Prover
126+
- r6a.xlarge for mock prover.
127+
- r6a.24xlarge for full prover.
133128

134129
The initial free disk space requirement is minimal (<2TB), but you should monitor available space as the network is always adding more data.
135130

mkdocs.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,10 @@ nav:
5050
- Deploy:
5151
- Validium: cdk/get-started/deploy-validium.md
5252
- Rollup:
53-
- Introduction: cdk/get-started/deploy-rollup.md
53+
- Introduction: cdk/get-started/deploy-rollup/intro.md
54+
- Install dependencies: cdk/get-started/deploy-rollup/install-dependencies.md
55+
- Create wallets: cdk/get-started/deploy-rollup/create-wallets.md
56+
- Deploy node: cdk/get-started/deploy-rollup/deploy-node.md
5457
- How to:
5558
- Manage policies: cdk/how-to/manage-policies.md
5659
- Architecture:

0 commit comments

Comments
 (0)