# Run Worker Node Allora

By [ic36006](https://paragraph.com/@ox97acc5) · 2024-08-15

---

**1\. Spec เครื่องที่ต้องการ**
------------------------------

ข้อกำหนดของระบบ:

• ระบบปฏิบัติการ: Ubuntu

• CPU: 1-2 คอร์

• หน่วยความจำ: 2-3 GB

• ที่เก็บข้อมูล: SSD หรือ NVMe ที่มีพื้นที่อย่างน้อย 50GB

### **คำแนะนำในการตรวจสอบการใช้งาน CPU และ RAM:**

ติดตั้ง htop เพื่อตรวจสอบการใช้งาน CPU และ RAM โดยใช้คำสั่ง:

    sudo apt-get install htop
    

หลังจากติดตั้งแล้ว ให้รันคำสั่ง htop เพื่อดูข้อมูลการใช้งาน CPU และ RAM

![](https://storage.googleapis.com/papyrus_images/150515c03c970714603812ac3cc21f94b125f7a6cdbc230abaafdaeb26b07c00.png)

(กด q หรือคลิกที่ Quit เพื่อออกจาก htop)

### **2\. ติดตั้งเครื่องมือและสร้างกระเป๋าสตางค์สำหรับ worker**

**เอกสารอ้างอิง:**

• **เอกสารทางการ:**

• สำหรับรายละเอียดเพิ่มเติม โปรดดูคำแนะนำอย่างเป็นทางการที่:

• [เอกสารสำหรับนักพัฒนา Allora Network](https://docs.allora.network/devs/workers)

• [ภาพรวมเกี่ยวกับ Points บน Allora Network](https://app.allora.network/points/overview)

• **เอกสารอ้างอิงเพิ่มเติม:**

• [Basic Coin Prediction Node Repository](https://github.com/allora-network/basic-coin-prediction-node)

• [Allora Hugging Face Walkthrough](https://github.com/allora-network/allora-huggingface-walkthrough)

**ติดตั้งซอฟต์แวร์ที่จำเป็น:**

หมายเหตุ: หากคุณมีกระเป๋าสตางค์อยู่แล้วและได้รับ uallo จาก faucet ของ testnet-1 แล้ว คุณสามารถข้ามขั้นตอนการติดตั้ง allorad และการสร้างกระเป๋าสตางค์ด้านล่างได้ แต่หากเป็นเซิร์ฟเวอร์ใหม่ คุณจำเป็นต้องติดตั้ง Git และ Docker เพื่อดำเนินการต่อ

**ติดตั้ง allorad:**

    curl -sSL https://raw.githubusercontent.com/allora-network/allora-chain/main/install.sh | bash -s -- v0.3.0
    

ผลลัพธ์การติดตั้งที่สำเร็จจะเป็นดังนี้:

`Installation complete. The allorad is now available in /root/.local/bin To make allorad available from any terminal session, add the following line to your .bashrc or .zshrc: export PATH="$PATH:/root/.local/bin"`

เพิ่มบรรทัดนี้ลงในไฟล์ .bashrc เพื่อให้สามารถใช้ allorad ได้จากทุก terminal:

    vi ~/.bashrc
    

• กด i เพื่อเข้าสู่โหมดแก้ไข

• เพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์:

    export PATH="$PATH:/root/.local/bin"
    

![](https://storage.googleapis.com/papyrus_images/4a949f8d4f75498298083f53ff5e7577fa8bbfdff038f937d422ef219299067a.png)

• บันทึกและออกจากโปรแกรมโดยกด Esc จากนั้นพิมพ์ :wq และกด Enter (หากต้องการออกโดยไม่บันทึก ให้กด Esc จากนั้นพิมพ์ :q! และกด Enter)

**โหลดไฟล์ .bashrc ใหม่:**

    source ~/.bashrc
    

**สร้างกระเป๋าสตางค์ใหม่สำหรับ worker node:**

    allorad keys add net1_worker
    

• ใส่รหัสผ่านใหม่สองครั้งสำหรับกระเป๋าสตางค์ที่สร้างใหม่

• บันทึกข้อมูลกระเป๋าสตางค์ใหม่ลงในไฟล์ txt โดยเฉพาะ: address และ 24 คำ mnemonic

\*\*     ในกรณีที่มีกระเป๋าอยู่แล้วต้องการใช้กระเป๋าเดิม\*\*

    allorad keys add net1_worker --recover
    

**ขอ faucet เพื่อรับ uallo:**

• สำหรับการรับ uallo เข้ากระเป๋าสตางค์ (ใช้ address ที่ได้จากคำสั่งด้านบน):

• เมื่อรัน worker เป็นครั้งแรกสำหรับแต่ละ topic, worker จะส่ง tx เพื่อสมัคร topic นั้น ดังนั้นจึงจำเป็นต้องมี uallo เพื่อส่ง tx

• เข้าไปที่ [Faucet Testnet-1 Allora](https://faucet.testnet-1.testnet.allora.network) เพื่อรับ uallo หากสำเร็จ จะมีภาพแสดงการ faucet สำเร็จ

![](https://storage.googleapis.com/papyrus_images/6caab07a0bb41bc396acc418f41d3b627988c8bc19b2f77c14d5e8292ae2a82a.png)

• หากมีปัญหาในการ faucet ให้ลอง รันคำสั่งนี้เพื่อตรวจสอบยอดคงเหลือในกระเป๋าสตางค์: (แทนที่ ด้วย address ของคุณ) allorad query bank balances <wallet> --node=https://allora-rpc.testnet-1.testnet.allora.network เช่น allorad query bank balances allo14u63usgn9cmqglvhte52qxuvuxatr4c0gf5rcj --node=https://allora-rpc.testnet-1.testnet.allora.network **ตรวจสอบกระเป๋าสตางค์ที่สร้างไว้:** allorad keys list **ติดตั้ง Git และ Docker:** **ติดตั้ง Git:** sudo apt update sudo apt install git **ตรวจสอบการติดตั้ง Git สำเร็จ:** git --version **ติดตั้ง Docker:** sudo apt-get install apt-transport-https ca-certificates curl software-properties-common -y curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb \[arch=amd64\] https://download.docker.com/linux/ubuntu $(lsb\_release -cs) stable" sudo apt-get update sudo apt-get install docker-ce jq python3-pip -y **ตรวจสอบการติดตั้ง Docker สำเร็จ:** • ตรวจสอบสถานะของ Docker: sudo systemctl status docker • กด q เพื่อออกจากโปรแกรม • ตรวจสอบเวอร์ชันของ Docker: docker --version • ผลลัพธ์ที่ได้ควรเป็น: Docker version 26.1.4, build 5650f9b หรือสูงกว่า **3\. ติดตั้ง Worker 1** หมายเหตุ: หากคุณกำลังติดตั้ง Worker 1 และ Worker 2 ที่ถูกติดตั้งก่อนการอัปเดตวันที่ 14/08/2024 คุณจำเป็นต้องหยุด worker เก่าตามคำแนะนำในหัวข้อ “หยุด Worker เก่า” ก่อนที่จะติดตั้งเวอร์ชันใหม่ **หยุดการทำงานของ worker:** เข้าไปยังโฟลเดอร์ ที่ติดตั้ง Woker ไว้แล้วใช้คำสั่ง docker compose down ลบข้อมูล worker เก่า (หากต้องการ): • ลบโฟลเดอร์ worker เก่า: rm -rf โฟลเดอร์ **การติดตั้ง Worker สำหรับการรัน topic 1, 3, 5:** • Topic 1, 3, 5 เป็นการทำนายราคาของ ETH, BTC, SOL ในระยะเวลา 10 นาที • ดูข้อมูลเพิ่มเติมได้ที่: [หน้าแคมเปญ](https://app.allora.network/points/campaign/run-inference-10m) **Clone repository:** git clone https://github.com/nhunamit/basic-coin-prediction-node.git **เปลี่ยนชื่อโฟลเดอร์ repository ที่เพิ่งโคลน:** mv basic-coin-prediction-node worker1-10m **ย้ายไปยังโฟลเดอร์ที่เปลี่ยนชื่อ:** cd worker1-10m **ดูโฟล์เดอร์ที่มีอยู่:** git branch -a **เปลี่ยนไปยังโฟล์เดอร์ worker1-10m:** git checkout worker1-10m **ตรวจสอบว่ามีโฟล์เดอร์ worker1-10m แล้ว:** git branch -a • หากเห็นตามภาพที่แสดงด้านล่าง แสดงว่าคุณได้เปลี่ยนไปยังสาขา worker1-10m เรียบร้อยแล้ว **แก้ไข 24 คำ mnemonic ในไฟล์ config.json:** vi config.json • กด i เพื่อเข้าสู่โหมดแก้ไข • ค้นหาบรรทัดที่มีคำว่า "addressRestoreMnemonic": "just clap slim ..." และแก้ไข “just clap slim …” ให้เป็น 24 คำ mnemonic ของกระเป๋าสตางค์ใหม่ที่สร้างในขั้นตอนการสร้างกระเป๋าสตางค์สำหรับ worker node • บันทึกและออกจากโปรแกรมโดยกด Esc จากนั้นพิมพ์ :wq และกด Enter (หากต้องการออกโดยไม่บันทึก ให้กด Esc จากนั้นพิมพ์ :q! และกด Enter) **รันคำสั่งเพื่อสร้างไฟล์ env\_file จากไฟล์ config.json:** ./init.config • หากพบข้อผิดพลาด เช่น ./init.config: line 10: jq: command not found ให้ติดตั้ง jq ด้วยคำสั่งนี้: sudo apt-get install jq -y แล้วรันคำสั่งด้านบนอีกครั้ง **หากมีข้อความแจ้งว่า:** wallet mnemonic already provided by you, loading config.json . Please proceed to run docker compose • แสดงว่าการสร้างคอนฟิกสำเร็จแล้ว **รัน worker ด้วยคำสั่ง docker compose:** docker compose up -d • หากไม่มีข้อผิดพลาด จะเห็นว่า worker กำลังทำงานอยู่ **ดู log ของ worker:** docker compose logs -f • กด Ctrl + C เพื่อออกจาก log **4\. ตรวจสอบบันทึกการทำงานของ Worker** หลังจากใช้คำสั่งเพื่อตรวจสอบบันทึกการทำงานของ Worker ด้วยคำสั่ง docker compose logs -f ให้ตรวจสอบบันทึกว่ามีข้อความดังต่อไปนี้: **ตรวจสอบที่อยู่กระเป๋าสตางค์ว่าถูกต้องหรือไม่:** allora-worker-1 | {"level":"info","address":"","time":1723550777,"message":"allora blockchain address loaded"} • หากที่อยู่ไม่ถูกต้อง ตรวจสอบการกรอก 24 คำ mnemonic และลองรันคำสั่งใหม่อีกครั้ง **บันทึกที่แสดงว่า Worker ได้ส่ง tx เพื่อลงทะเบียน topic:** {"level":"debug","msg":"Register worker node","txHash":"0DD330318DF8C2FFF11CC84A4134FF14DE9D85E2F2ED0D5B14ADAD20D39CB214","time":1723488798,"message":"Success"} **บันทึกที่แสดงว่า Worker ได้ลงทะเบียน topic แล้ว ไม่จำเป็นต้องส่ง tx เพื่อลงทะเบียน topic อีก:** {"level":"info","topicId":1,"time":1723489480,"message":"Worker node already registered for topic"} **บันทึกที่แสดงว่า Worker ได้ส่งข้อมูลการทำนายราคาลงในเครือข่าย blockchain Allora:** {"level":"debug","msg":"Send Worker Data to chain","txHash":"C5F26965921567F342F5FE0BDCCCD399164EB2B553C1B2F933AB6B476A577E45","time":1723497278,"message":"Success"} ขึ้นอยู่กับ topic ระยะเวลาที่จะมี tx Send Worker Data to chain จะแตกต่างกัน เช่น topic 1-3-5 จะมีระยะเวลา 10 นาที, topic 2-4-6 จะมีระยะเวลา 24 ชั่วโมง, topic 7-8-9 จะมีระยะเวลา 20 นาที ดังนั้น Worker จะส่ง tx การทำนายไปยังเครือข่าย blockchain Allora หลังจากระยะเวลาดังกล่าว **ตรวจสอบกระเป๋าสตางค์ของคุณว่าส่ง tx หรือไม่โดยการดูบันทึกหรือใช้เว็บไซต์ตรวจสอบ tx ของกระเป๋าสตางค์ (Worker) นี้** ดู point จากการรัน Worker node ที่ : [Active Topics](https://app.allora.network/points/campaign/active-topics) **ข้อผิดพลาด rpc:** • บันทึกที่คล้ายกับด้านล่าง และเกิดขึ้นหลายครั้ง ควรเปลี่ยนไปใช้ rpc อื่น หากเกิดข้อผิดพลาดน้อยไม่จำเป็นต้องเปลี่ยนก็ได้ แต่ควรเปลี่ยนเพื่อความมั่นใจ {"level":"error","error":"error while requesting node '[https://sentries-rpc.testnet-1.testnet.allora.network/](https://sentries-rpc.testnet-1.testnet.allora.network/)': error in json rpc client, with http response metadata: (Status: 502 Bad Gateway, Protocol HTTP/1.1). error unmarshalling: invalid character '<' looking for beginning of value","msg":"Send Worker Data to chain","time":1723612169,"message":"Failed, retrying... (Retry 1/1)"} **วิธีการเปลี่ยน rpc:** **(ใช้วิธีใดวิธีหนึ่งต่อไปนี้)** • **วิธีที่ 1:** • แก้ไขในไฟล์ ./worker-data/env\_file vi ./worker-data/env\_file • แก้ไข rpc จาก "nodeRpc":"<rpc เดิม>" เป็น "nodeRpc":"<rpc ใหม่>" ตัวอย่างเช่น เปลี่ยนเป็น "nodeRpc":"[https://allora-rpc.testnet-1.testnet.allora.network](https://allora-rpc.testnet-1.testnet.allora.network)" • หยุด Worker: docker compose down • รัน Worker ใหม่: docker compose up -d --build • **วิธีที่ 2:** • แก้ไขในไฟล์ init.config vi init.config • แก้ไข rpc บรรทัดที่ 8 จาก "nodeRpc": "<rpc เดิม>" เป็น "nodeRpc": "<rpc ใหม่>" ตัวอย่างเช่น เปลี่ยนเป็น "nodeRpc": "[https://allora-rpc.testnet-1.testnet.allora.network](https://allora-rpc.testnet-1.testnet.allora.network)" • รันคำสั่งสร้างไฟล์ env\_file จากไฟล์ config.json: ./init.config • หยุด Worker: docker compose down • รัน Worker ใหม่: docker compose up -d --build **หมายเหตุ:** • เมื่อใช้วิธีที่ 1 ห้ามใช้คำสั่ง ./init.config เพราะจะทำให้ไฟล์ env\_file ถูกเขียนทับด้วยไฟล์ config.json ซึ่งไม่ได้เปลี่ยน rpc ใหม่ ดังนั้นจะไม่มีผลใดๆ **rpc ที่ใช้สำหรับ Worker:** • [https://allora-rpc.testnet-1.testnet.allora.network](https://allora-rpc.testnet-1.testnet.allora.network) มีความเสถียรที่สุด • [https://sentries-rpc.testnet-1.testnet.allora.network](https://sentries-rpc.testnet-1.testnet.allora.network) มักเกิดข้อผิดพลาด 502 Bad Gateway **หมายเหตุ:** • คุณสามารถสร้าง rpc ของคุณเองตามคำแนะนำที่: [ติดตั้ง Full Node](https://docs.allora.network/full-node) โดยใช้ rpc นี้สำหรับ Worker โดยใช้ IP ของเซิร์ฟเวอร์แทน localhost: [http://ip\_server:26657](http://ip_server:26657) แทนที่ [http://localhost:26657](http://localhost:26657) ข้อมูลทั้งหมดแปลมาจากภาษาเวียดนามที่ [https://nodium.xyz/docs/allora/install-worker/intro](https://nodium.xyz/docs/allora/install-worker/intro) ใครต้องการรัน Worker Topic 2, 4, 6 7, 8, 9 ดูได้จากต้นฉบับได้เลย

---

*Originally published on [ic36006](https://paragraph.com/@ox97acc5/run-worker-node-allora)*
