Skip to content

ahmkah/Power-Argent-on-Gnosis-Chain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 

Repository files navigation

Power Argent on Gnosis Chain

https://powerpool.notion.site/Launching-Gnosis-Client-6b96aa04804b45c1acd5654e7d166aed

https://powerpool.notion.site/Landing-Page-59ab36698b8e417db9be39bdd432a42f

Hardware requirements

CPU: 4 Cores
RAM: 16 GB
SSD: 300 GB
Ubuntu 20.04 or 22.04

STEP-1, Let's update our server:

sudo apt-get update && sudo apt-get upgrade -y

STEP-2, Install Nethermind clients (enter the commands one by one):

IMPORTANT! Do not forget to forward ports: 30303 and 9000 on your router or digital hosting! Otherwise, your nodes will not be discoverable and will not sync!

sudo ufw status

sudo ufw allow 53
sudo ufw allow 22
sudo ufw allow 9000
sudo ufw allow 30303

sudo ufw status enable

Generate JWT secret file by executing the following command:

openssl rand -hex 32 | tr -d "\n" > "/tmp/jwtsecret"
sudo apt-get install curl screen zip wget
screen -S nethermind

sudo apt-get install libsnappy-dev

wget https://github.com/NethermindEth/nethermind/releases/download/1.20.4/nethermind-1.20.4-d06ec791-linux-x64.zip

unzip nethermind-1.20.4-d06ec791-linux-x64.zip

rm -rf nethermind-1.20.4-d06ec791-linux-x64.zip

We start the command in the stage at once in the screen, instead of "PORT1" type the port that you want to be ws, such as 8599 ... Wait a little, then exit the screen with CTRL+A and D.. To enter the screen again "screen -r nethermind" :

sudo ufw allow 8546
./Nethermind.Runner \
--config gnosis \
--Init.WebSocketsEnabled true \
--JsonRpc.Enabled true \
--JsonRpc.EnabledModules "eth,net,web3,subscribe" \
--JsonRpc.WebSocketsPort 8546 \
--JsonRpc.Host 0.0.0.0 \
--JsonRpc.JwtSecretFile /tmp/jwtsecret \
--baseDbPath ~/nethermindDb \
--JsonRpc.Timeout 120000 \
--Sync.FastSync true

image

STEP-3, Install Lighthouse (enter the commands one by one):

screen -S lighthouse

curl -LO https://github.com/sigp/lighthouse/releases/download/v4.5.0/lighthouse-v4.5.0-x86_64-unknown-linux-gnu.tar.gz

tar -xvf lighthouse-v4.5.0-x86_64-unknown-linux-gnu.tar.gz

sudo cp lighthouse /usr/bin

rm -rf lighthouse lighthouse-v4.5.0-x86_64-unknown-linux-gnu.tar.gz

We start the command in the stage at once in the screen "PORT1, PORT2, PORT3" instead of typing the desired port, such as 6699 7799 8899 ... Wait a little, then exit the screen with CTRL+A and D.. The time to sync "screen -r lighthouse" to enter the screen again can exceed 24 hours!!!

sudo ufw allow PORT3
lighthouse beacon_node \
--network gnosis \
--debug-level info \
--datadir ~/gnosis-lh1 \
--execution-endpoints http://127.0.0.1:8551 \
--jwt-secrets /tmp/jwtsecret \
--enr-udp-port <PORT1> } \
--enr-tcp-port <PORT2>  \
--discovery-port <PORT3>  \
--checkpoint-sync-url https://checkpoint.gnosis.gateway.fm \
--disable-deposit-contract-sync

You will see something like this: image

Some errors may pop out - ignore them. At the same time, your execution client will catch up: image

STEP-4: Expose JSON RPC Port

To utilize the RPC endpoint (provided by your execution client) on an outside machine, enable port forwarding for port 8546 and use the following address: ws://ip.of.your.server:8546, replacing the phrase with the actual IP address of the PC your Nethermind client runs on.

If the PowerAgent is to be run on the same machine, it is not necessary to enable port forwarding.

STEP-5 Power Argent Standalone Installation (enter the commands one by one):

sudo apt install apt-transport-https ca-certificates curl software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update

sudo apt install docker-ce docker-ce-cli containerd.io

sudo systemctl start docker
sudo systemctl enable docker

docker --version

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

docker-compose --version
sudo apt install git
sudo apt install nodejs
sudo apt install npm
git clone https://github.com/eitelvolkerts/poweragent-standalone
cd poweragent-standalone
npm i

At this stage, if you are going to work with the same admin address and worker, you just need to move the backup file to the corresponding keys file using an application such as winscp, if you are going to create a new worker, skip this section!!! UTC--2023-08-18T09-32-40.364Z--8ccf, from which we received the PowerArgent backup..... our file with a Winscp-style application image

if you want to create a new worker, use this command, if you have made a move, skip this part!!!

node jsongen.js ${YOUR_WORKER_PRIVATE_KEY} ${A_PASSWORD_OF_YOUR_CHOICE}

main.yaml editing. Now open the file below and just change your worker address '<WORKER_ADDRESS_FOR_WHICH_YOU_GENERATED_THE_KEYFILE>' and password '<PASSWORD_SPECIFIED_AT_KEYFILE_GENERATION>'. CTRL + X , y enter to save and exit.

nano config/main.yaml
networks:
    data_source: network
    enabled:
      - gnosis
    details:
      gnosis:
        rpc: '${YOUR_RPC}'
        max_priority_fee_per_gas: 6000000
        agents:
          '0x071412e301C2087A4DAA055CF4aFa2683cE1e499':
            executor: pga
            keeper_worker_address: '<WORKER_ADDRESS_FOR_WHICH_YOU_GENERATED_THE_KEYFILE>'
            key_pass: '<PASSWORD_SPECIFIED_AT_KEYFILE_GENERATION>'
            accept_max_base_fee_limit: true
            accrue_reward: true
            tx_resend_or_drop_after_blocks: 4
            tx_resend_max_gas_price_gwei: 1000
            tx_resend_max_attempts: 4
            gas_price_priority_add_gwei: 100
            data_source: subgraph
            subgraph_url: https://api.studio.thegraph.com/query/48711/ppav2-rd-gnosis-b12-ui/version/latest
            max_block_delay: 10
            resolve_min_success_count: 3

STEP-6 Power Argent Standalone Launch :

To get the ${CONTAINER_NAME}, execute docker ps and find the container id. If you changed the name of the container, use it instead.

docker pull powerpool/power-agent-node
docker compose up -d
docker logs -f poweragent-standalone-bot-1

Enter the command below to save the Log file:

docker logs poweragent-standalone-bot-1 >& powerargentlogfile.log

Update (In the folder with the docker-compose.yaml file run)

docker compose down --rmi local
docker pull powerpool/power-agent-node
docker compose up -d

Stop (In the folder with the docker-compose.yaml file run)

docker compose down --rmi local

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages