
Hardware requirement: 8 cores CPU, 16GB RAM, 100GB+ SSD
ไกด์นี้นำมาจากของคุณ Moei นะครับต้นทางอยู่ทางนี้ https://github.com/0xmoei/aztec-network
สิ่งที่ต้องแจ้งก่อนคือ
ไม่มีการันตีรางวัล
ตอนนี้ RPC ฟรีมีปัญหาการใช้งานเยอะและติดลิมิต ส่วน RPC แบบเติมเงินแพงและบางส่วนอาจจะพัง
เลื่อนๆดูวิธีทำข้างล่างก่อนก็ดีครับ พอจะได้เข้าใจว่าต้องทำอะไรบ้าง
สิ่งที่ต้องเตรียม
VPS หรือจะรันในคอมบ้านก็ได้ตามสะดวก
กระเป๋าไก่ และเตรียม Sepolia ETH ด้วย
โหนดเช่าและ setup ตามไกด์นี้ก่อนแล้วมาทำตามขั้นตอนที่ 2
ขั้นตอนที่ 2 ติดตั้ง Aztec Tools
bash -i <(curl -s https://install.aztec.network)กด Y

echo 'export PATH="$HOME/.aztec/bin:$PATH"' >> ~/.bashrc
source ~/.bashrcขั้นตอนที่ 3 ปิด-เปิดใหม่ครั้งนึง

ขั้นตอนที่ 4 เช็คว่าติดตั้งเรียบร้อยไหม
มันจะดูโล่งๆ แต่ก็อปไปครับ ตอนวางแล้วมันขึ้นให้

อัปเดต
aztec-up 1.2.1ขั้นตอนที่ 5 เปิด ports และ firewall
ใส่คำสั่งข้างล่างและกด Y --> Enter
# Firewall
ufw allow 22
ufw allow ssh
ufw enable
# Sequencer
ufw allow 40400
ufw allow 8080ขั้นตอนที่ 6 เริ่มรันโหนด
สร้าง aztec directory
mkdir aztecเข้า aztec directory
cd aztecสร้าง .env
nano .envเข้าไปเติมตามนี้ -->เสร็จแล้วกด Ctrl + X --> กด Y --> Enter
Validator key ใช้ของกระเป๋าไก่นะครับ และเติม Sepolia ETH ไว้นิดหน่อยด้วย ขุดขั้นต่ำ 0.05 ETH ได้ที่นี่ https://sepolia-faucet.pk910.de/
ETHEREUM_RPC_URL=ใส่ RPC URL
CONSENSUS_BEACON_URL=ใส่ BEACON RPC URL
VALIDATOR_PRIVATE_KEYS=0xPrivate keyของเราถ้าไม่มี 0x ก็ให้ไว้ด้วยเติมข้างหน้า
COINBASE=Public address ของเรา
P2P_IP=IPที่เรารันโหนด aztec
สร้าง docker compose
nano docker-compose.ymlนำข้างล่างไปวางแล้ว --> กด Ctrl + X --> กด Y --> Enter
services:
aztec-node:
container_name: aztec-sequencer
network_mode: host
image: aztecprotocol/aztec:latest
restart: unless-stopped
environment:
ETHEREUM_HOSTS: ${ETHEREUM_RPC_URL}
L1_CONSENSUS_HOST_URLS: ${CONSENSUS_BEACON_URL}
DATA_DIRECTORY: /data
VALIDATOR_PRIVATE_KEYS: ${VALIDATOR_PRIVATE_KEYS}
COINBASE: ${COINBASE}
P2P_IP: ${P2P_IP}
LOG_LEVEL: info
entrypoint: >
sh -c 'node --no-warnings /usr/src/yarn-project/aztec/dest/bin/index.js start --network testnet --node --archiver --sequencer'
ports:
- 40400:40400/tcp
- 40400:40400/udp
- 8080:8080
volumes:
- /root/.aztec/testnet/data/:/dataรันโหนด docker
docker compose up -dวิธีเช็คการทำงานคือ
docker compose logs -fn 1000รายละเอียดเพิ่มเติม
ถ้าอยากสั่งหยุดและปิดโหนดให้ใช้คำสั่งนี้
docker compose down -vวิธีอัปเดตโหนดไปเวอร์ชั่น 2.1.2
นำมาจากไกด์ของ dev ในดิส aztec นะครับ https://github.com/HarishMelwani/AZTEC-UPDATE-2.1.2
หยุดโหนด
cd ~/aztec && docker compose down -vติดตั้ง Aztec CLI
bash -i <(curl -s https://install.aztec.network)echo 'export PATH="$HOME/.aztec/bin:$PATH"' >> ~/.bashrc
source ~/.bashrcaztec-upติดตั้ง Foundry
curl -L https://foundry.paradigm.xyz | bashsource ~/.bashrcใช้คำสั่งข้างล่าง
ใส่ private key ของ wallet ที่เราใช้รันโหนด
ใส่ Sepolia RPC ที่เราใช้งาน
ใส่ครบแล้วอ่านต่อข้างล่างครับ
#!/bin/bash
clear
echo "pls provide your old validator info."
read -sp " put your OLD Sequencer Private Key (will not be shown): " OLD_PRIVATE_KEY && echo
read -p " put your sepolia rpc only: " ETH_RPC
echo "Goodd. Starting.." && echo " "
rm -f ~/.aztec/keystore/key1.json
echo ":BE READY to write down your private key both eth and BLS and your eth address."
read -p " Press [Enter] to generate your new keys..."
aztec validator-keys new --fee-recipient 0x0000000000000000000000000000000000000000000000000000000000000000 && echo " "
KEYSTORE_FILE=~/.aztec/keystore/key1.json
NEW_ETH_PRIVATE_KEY=$(jq -r '.validators[0].attester.eth' $KEYSTORE_FILE)
NEW_BLS_PRIVATE_KEY=$(jq -r '.validators[0].attester.bls' $KEYSTORE_FILE)
NEW_PUBLIC_ADDRESS=$(cast wallet address $NEW_ETH_PRIVATE_KEY)
echo "good! Your new keys are below. SAVE THIS INFO SECURELY!"
echo " - NEW ETH Private Key: $NEW_ETH_PRIVATE_KEY"
echo " - NEW BLS Private Key: $NEW_BLS_PRIVATE_KEY"
echo " - NEW Public Address: $NEW_PUBLIC_ADDRESS"
echo " "
echo "You need to send 0.2 to 0.5 Sepolia eth to this new address:"
echo " $NEW_PUBLIC_ADDRESS"
read -p " After the funding tnx is confirmed, press [Enter] to continue.." && echo " "
echo "Approving STAKE spending..."
cast send 0x139d2a7a0881e16332d7D1F8DB383A4507E1Ea7A "approve(address,uint256)" 0xebd99ff0ff6677205509ae73f93d0ca52ac85d67 200000ether --private-key "$OLD_PRIVATE_KEY" --rpc-url "$ETH_RPC" && echo " "
echo "joining the testnet yey..."
aztec add-l1-validator --l1-rpc-urls "$ETH_RPC" --network testnet --private-key "$OLD_PRIVATE_KEY" --attester "$NEW_PUBLIC_ADDRESS" --withdrawer "$NEW_PUBLIC_ADDRESS" --bls-secret-key "$NEW_BLS_PRIVATE_KEY" --rollup 0xebd99ff0ff6677205509ae73f93d0ca52ac85d67 && echo " "
echo "All done! u have successfully joined the new testnet now rerun your node with your new pvt and address"
เติมเหรียญเข้า public address จะอยู่ในตำแหน่งที่ชี้ เติมประมาณ 0.2 Sepolia ETH --> จากนั้นกด Enter
แก้ไข .env
เปลี่ยนไปใส่ ETH private key ใหม่ที่ได้จากขั้นตอนข้างบนตรง VALIDATOR_PRIVATE_KEYS=
เปลี่ยนไปใส่ public address ใหม่ตรง COINBASE=
cd aztecnano .envแก้ไข nano docker-compose.yml
nano docker-compose.ymlหาส่วนนี้และเปลี่ยน
--snapshots-url https://snapshots.aztec.graphops.xyz/filesด้วยอันนี้
--sync-mode fullตำแหน่งจะอยู่ประมาณนี้ครับ ในรูปคือเปลี่ยนแล้ว

อัปเดตและเริ่มโหนดใหม่
sed -i 's|image: aztecprotocol/aztec:.*|image: aztecprotocol/aztec:2.1.2|' docker-compose.yml && docker compose pull && docker compose up -dจากนั้นเอา public address ใหม่ไปเช็คในคิวทาง https://testnet.dashtec.xyz/queue
แล้ว import private key ใหม่ลง wallet เผื่อไว้ด้วยครับ
No comments yet