إعداد عقدة OP Geth

خطوات تشغيل Postgres وLight Client وGeth وRhea وHercules، وNginx اختياريًا عبر Docker.

تخدم عقدة OP Geth هذه كعقدة RPC غير مصوِّتة تُمكّن من تنفيذ معاملات Eth L2.

  • يتطلب إعداد عقدة OP Geth كلًا من OP Geth وRhea وHercules وLight Client (المعروف أيضًا باسم Proxy) وPostgres.

  • تم تعديل OP Geth لحساب الغاز بناءً على الحوسبة المطلوبة في Solana. ويسترجع قيمة الغاز المطلوبة عبر الاستعلام إلى Light Client.

  • تلتقط Rhea معاملات L2 من ذاكرة OP Geth المؤقتة، وتحوّلها إلى معاملات Solana، وتُرسلها إلى Solana لترتيبها تسلسليًا.

  • تُنفّذ عقد التصويت في إجماع Solana هذه المعاملات وتُصوّت على ترتيبها. يقرأ Hercules الحالة من عقد Solana ويؤكد معاملات L2 وترتيبها على OP Geth.

مواصفات الجهاز

نوصي باستخدام جهاز Ubuntu بالمواصفات أدناه. ومع ذلك، فإن macOS مدعوم أيضًا.

4 أنوية، 8GB RAM، 1TB تخزين، 8MBit/sec عرض نطاق الشبكة

Ubuntu، x86_64، 1 TB SSD

تشغيل حاويات Docker بأمر واحد

docker compose up -d

بدلاً من ذلك، شغّل حاويات Docker أدناه بالتسلسل

1

Postgres

docker compose up -d postgres_rome
docker logs postgres_rome -f

انتظر حتى تُظهر السجلات "database system is ready to accept connections".

2

تطبيق عمليات الترحيل

docker compose up apply_migrations
3

Light Client

يوفّر Light Client واجهة Ethereum للوصول إلى حالة Solana.

ويشمل ذلك توفير تقديرات الغاز إلى Geth.

docker compose up -d proxy_rome
docker logs proxy_rome -f

انتظر حتى تُظهر السجلات "Starting the RPC server at 0.0.0.0:9090".

4

Geth

Geth هو عميل التجميع الذي يقبل وينفذ معاملات Eth L2، ويقدّم نتائج المعاملات إلى المستخدم. وهو عقدة RPC غير مصوِّتة.

docker compose up -d geth
docker logs geth -f

انتظر حتى تُظهر السجلات "HTTP server started".

5

Rhea

تأخذ Rhea معاملات التجميع من Geth، وتعبئها كمعاملات Rome Solana، وتُرسلها إلى Solana لترتيبها تسلسليًا.

docker compose up -d rhea
docker logs rhea -f

انتظر حتى تُظهر السجلات "Polling: http://geth:8545".

6

Hercules

يقرأ Hercules الحالة من عقد Solana ويؤكد معاملات L2 وترتيبها على OP Geth.

docker compose up -d hercules
docker logs hercules -f

انتظر حتى تُظهر السجلات "SolanaBlockLoader is in sync with Solana validator".

7

واجهة الإيداع

تمكّن واجهة الإيداع المستخدمين من إيداع وسحب SOL مقابل rSOL الذي يُستخدم لدفع رسوم الغاز على Rome.

docker compose up -d depositui
docker logs depositui -f
8

Nginx

docker compose up -d romenginx
docker logs romenginx -f

انتظر حتى تُظهر السجلات "Configuration complete; ready for start up".

أعد تشغيل الخدمات إذا لزم الأمر

نظرة عامة على حاويات Docker

حاويات Docker التي شغّلتها مُدرجة أدناه.

حاوية Docker
الغرض

proxy_rome

Light Client

geth

OP Geth

rhea

Rhea

hercules

Hercules

postgres_rome

قاعدة بيانات Postgres

apply_migrations

ترحيلات Postgres

deposuitui

واجهة الإيداع

romenginx

وكيل Nginx

Last updated

Was this helpful?