cryptofoundry

الاتصال بـ cryptofoundry

أخبرنا بما تريد بناءه أو أتمتته.

البريد الإلكتروني
[email protected]
ADAMANT Messenger
فتح في ADAMANT
مقال

كيفية تثبيت عقدة ADAMANT على نظام macOS

كيفية تثبيت عقدة ADAMANT على نظام macOS

يغطي هذا الدليل تثبيت وتشغيل عقدة بلوكشين ADAMANT Messenger من الصفر على نظام macOS، بما في ذلك أدوات التطوير، وPostgreSQL، وNode.js، وتكوين التشغيل التلقائي بعد إعادة التشغيل.

تم الاختبار على نظام macOS 13 Ventura والإصدارات الأحدث. نوع العقدة: mainnet أو testnet. الوقت المطلوب: ~15–30 دقيقة.

تشغيل عقدة ADAMANT يدعم بلوكشين لا مركزي بالكامل ويركّز على الخصوصية، ويعمل على تقوية الشبكة، ويوفّر وصولاً مباشراً إلى بيانات البلوكشين، ويتيح مكافآت dPoS إذا أصبحت مُصدِّقًا/مفوَّضًا.

المتطلبات المسبقة

أنت بحاجة إلى جهاز Mac بنظام macOS 13 (Ventura) أو أحدث، وحساب مستخدم مسؤول، واتصال إنترنت مستقر، وحوالي 50 غيغابايت من المساحة الحرة على القرص، وخبرة أساسية في استخدام Terminal. افتح Terminal بالضغط على Cmd + Space، واكتب Terminal، ثم اضغط Enter.

تثبيت أدوات سطر أوامر Apple

تُعد أدوات المطور من Apple ضرورية لترجمة الأكواد واستخدام Git:

xcode-select --install

ستظهر لك نافذة منبثقة تطلب تأكيد التثبيت. وافق وانتظر حتى الانتهاء.

تثبيت Homebrew

يُعد Homebrew مدير حزم لأنظمة macOS ويُستخدم لتثبيت PostgreSQL وغيرها من التبعيات:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

كيفية تثبيت عقدة ADAMANT على نظام macOS

أكّد بالضغط على مفتاح Enter. بعد التثبيت، اتبع التعليمات المطبوعة في قسم “Next steps” (عادةً إضافة Homebrew إلى ملف تهيئة shell مثل ~/.zprofile أو ~/.bash_profile). أعد تحميل shell:

source ~/.zprofile  # or ~/.bash_profile depending on your shell

تثبيت الحزم المطلوبة

قم بتثبيت PostgreSQL وRedis وGit والأدوات الضرورية الأخرى:

brew install postgresql redis git make automake autoconf libtool jq htop

ابدأ وفعّل PostgreSQL وRedis:

brew services start postgresql
brew services start redis

إعداد قاعدة بيانات PostgreSQL

أنشئ مستخدمًا وقاعدة بيانات في PostgreSQL لـ ADAMANT:

# Customize these as needed
DB_USER=adamant
DB_NAME=adamant_main
DB_PASSWORD=securepassword

psql postgres -c "CREATE ROLE $DB_USER LOGIN PASSWORD '$DB_PASSWORD';"
psql postgres -c "CREATE DATABASE $DB_NAME OWNER $DB_USER;"

تثبيت NVM وNode.js

قم بتثبيت Node Version Manager (NVM) وNode.js 22 LTS (اسم الرمز Jod):

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
source ~/.nvm/nvm.sh
nvm install 22

ثبّت pm2 (مدير عمليات Node.js):

npm install -g pm2

قم بتهيئة pm2 لتدوير السجلات (اختياري لكنه موصى به):

pm2 install pm2-logrotate
pm2 set pm2-logrotate:max_size 500M
pm2 set pm2-logrotate:retain 5
pm2 set pm2-logrotate:compress true
pm2 set pm2-logrotate:rotateInterval '0 0 0 1 *'

استنساخ وإعداد عقدة ADAMANT

لتنظيم الإعداد، استخدم دليل ~/Applications (مجلد شخصي في دليل المنزل الخاص بك، وليس /Applications النظامي):

mkdir -p ~/Applications
cd ~/Applications

استنسخ مستودع ADAMANT من GitHub:

# Customize these as needed
NETWORK=mainnet   # or testnet
BRANCH=master     # or desired Git branch

git clone https://github.com/Adamant-im/adamant --branch $BRANCH
cd adamant
npm install

كيفية تثبيت عقدة ADAMANT على نظام macOS

عيّن ملف تهيئة عقدة ADM:

cp config.default.json config.json
sed -i '' "s/\"password\": \"password\"/\"password\": \"$DB_PASSWORD\"/" config.json

هذا ينسخ التهيئة الافتراضية إلى ملفك الخاص ويُدخل كلمة المرور الخاصة بقاعدة البيانات التي حددتها سابقًا. يمكنك أيضًا تعديل التهيئة يدويًا باستخدام nano config.json.

لعقدة testnet، استخدم هذه الأوامر بدلًا من ذلك:

cp test/config.default.json test/config.json
sed -i '' "s/\"password\": \"password\"/\"password\": \"$DB_PASSWORD\"/" test/config.json

تنزيل لقطة البلوكشين (اختياري، للـ mainnet فقط)

إذا كنت ترغب في دعم اللامركزية الكاملة، تخطّ هذه الخطوة. خلاف ذلك، فإن تنزيل لقطة يسرّع عملية مزامنة البلوكشين بشكل كبير:

curl -O https://explorer.adamant.im/db_backup.sql.gz
gunzip db_backup.sql.gz
psql $DB_NAME < db_backup.sql
rm db_backup.sql

قد تستغرق هذه العملية ما يصل إلى 20 دقيقة، لكنها توفر حوالي أسبوع من وقت المزامنة.

تشغيل عقدة ADM

أوّلًا، شغّل العقدة مؤقتًا في Terminal للتحقق من أن كل شيء يعمل:

node app.js

إذا نجح الأمر، ستظهر لك مخرجات البدء ومزامنة البلوكشين مع ازدياد ارتفاع العقدة:

كيفية تثبيت عقدة ADAMANT على نظام macOS

كيفية تثبيت عقدة ADAMANT على نظام macOS

أوقف العقدة باستخدام Ctrl + C، ثم ابدأها باستخدام pm2 لكي تستمر بعد إغلاق Terminal:

# Mainnet
pm2 start --name adamant app.js

# Or, for testnet
# pm2 start --name adamanttest app.js -- --config test/config.json --genesis test/genesisBlock.json

كيفية تثبيت عقدة ADAMANT على نظام macOS

احفظ قائمة عمليات pm2:

pm2 save

تحقق من أنها تعمل:

pm2 logs adamant

كيفية تثبيت عقدة ADAMANT على نظام macOS

إعادة تشغيل العقدة بعد إعادة تشغيل macOS

لإعادة تشغيل عقدة ADAMANT تلقائيًا بعد إعادة تشغيل جهاز Mac، لديك خياران.

الخيار 1: التشغيل اليدوي بعد إعادة التشغيل. في كل مرة يُعاد تشغيل جهاز Mac، قم بتشغيل:

source ~/.nvm/nvm.sh
pm2 resurrect

يمكنك أتمتة هذا عن طريق إضافة الأسطر إلى ملف تهيئة shell (مثل ~/.zprofile):

echo 'source ~/.nvm/nvm.sh && pm2 resurrect' >> ~/.zprofile

الخيار 2: التشغيل التلقائي باستخدام pm2 startup. قد لا يعمل أمر pm2 startup بسلاسة مع حماية سلامة النظام في macOS (SIP). بدلًا من ذلك، أنشئ خدمة launchd:

pm2 startup launchd

يُنتج هذا أمرًا مثل sudo env PATH=$PATH:/Users/youruser/.nvm/versions/node/vXX.X.X/bin pm2 startup launchd -u youruser — hp /Users/youruser. قم بتشغيله في Terminal، ثم احفظ قائمة عمليات pm2:

pm2 save

ستعيد pm2 الآن تشغيل عقدة ADAMANT تلقائيًا عند التشغيل. لإلغاء هذا لاحقًا، قم بتشغيل pm2 unstartup launchd.

التحقق من التثبيت

تحقق من حالة العملية:

pm2 show adamant

تحقق من ارتفاع كتلة العقدة:

curl http://localhost:36666/api/blocks/getHeight

احصل على حالة العقدة:

curl http://localhost:36666/api/node/status

الاستجابة التي تحتوي على "syncing":true تعني أن العقدة لم تُزامَن بعد بالكامل. انتظر حتى تكتمل مزامنة البلوكشين بالكامل. استخدام لقطة بلوكشين يجعل هذه العملية أسرع بكثير.

للمزيد من المعلومات، راجع وثائق عقدة ADAMANT.