github.com/0xPolygon/supernets2-node@v0.0.0-20230711153321-2fe574524eaa/docs/components/synchronizer.md (about)

     1  # Component: Synchronizer
     2  
     3  ## ZKEVM Synchronizer:
     4  
     5  The ZKEVM Synchronizer is the **base** component for which all others will depend on. You can *mix and match* different components to achieve a different outcome, be it sending transactions or computing proofs, but the Sync module will need to be up and running.
     6  
     7  This module syncs data between the Layer 1 Ethereum network and ZKEVM L2 network.
     8  
     9  ## Running:
    10  
    11  The preferred way to run the ZKEVM Synchronizer component is via Docker and Docker Compose.
    12  
    13  ```bash
    14  docker pull hermeznetwork/supernets2-node
    15  ```
    16  
    17  To orchestrate multiple deployments of the different ZKEVM Node components, a `docker-compose.yaml` file for Docker Compose can be used:
    18  
    19  **THIS STEP IS MANDATORY ON ALL DEPLOYMENT MODES**
    20  
    21  ```yaml
    22    supernets2-sync:
    23      container_name: supernets2-sync
    24      image: supernets2-node
    25      command:
    26          - "/bin/sh"
    27          - "-c"
    28          - "/app/supernets2-node run --genesis /app/genesis.json --cfg /app/config.toml --components synchronizer"
    29  ```
    30  
    31  The container alone needs some parameters configured, access to certain configuration files and the appropriate ports exposed.
    32  
    33  - environment: Env variables that supersede the config file
    34      - `ZKEVM_NODE_STATEDB_HOST`: Name of StateDB Database Host
    35  - volumes:
    36      - `your config.toml file`: /app/config.toml
    37      - `your genesis.json file`: /app/genesis.json