انشر تطبيقًا لديك بالفعل باستخدام erpc worker import
يستقبل
erpc worker import تطبيقًا لديك بالفعل، كما هو. فهو يكتب ملف erpc.toml الخاص بالتطبيق ولا يغيّر شيئًا من الكود الخاص به.تصف هذه الصفحة ERPC CLI
v0.1.0-rc.4، وهو إصدار تمهيدي.الاستيراد والنشر
يمكن أن يكون التطبيق بوتًا يعمل اليوم تحت systemd أو Docker، أو خدمة بلغة أخرى. يقرأ
import مجلد التطبيق ويكتب ملف erpc.toml الذي يصفه. لا يُكتب أي شيء آخر في التطبيق، ولا يُشغَّل أي شيء فيه، ولا يُغيَّر الكود الخاص به. ويضيف erpc التطبيق إلى قائمته الخاصة، كما يفعل init.bash
- حزمة Cargo تُبنى باستخدام
cargo build --release، كما يُبنى التطبيق الذي ينشئهinit. ويُسمّى التطبيق باسم الحزمة ما لم يحدد--nameغير ذلك، ويختار--binالملف الثنائي عندما تحتوي الحزمة على أكثر من واحد. ويُرفض جذر مساحة العمل: وجّهimportإلى الحزمة. - ملف ثنائي لنظام Linux مبني في أي مكان، بأي لغة، يُنشر بالطريقة نفسها باستخدام
--binary <PATH>، ويُشحن كما هو. يقرأ erpc ترويسته ويرفض الملف الذي لا يستطيع الخادم تشغيله: ملف ثنائي لنظام macOS أو Windows، أو سكربت، أو مكتبة مشتركة، أو ملف مقطوع، أو ملف لبنية معمارية غيرbuild.target. ويجب أن يكون الملف الثنائي مربوطًا ربطًا ثابتًا، أو مربوطًا بـ glibc مع وجود المحمِّل في مساره المعتاد. وهو ملف من ملفات التطبيق: يُرفض الرابط الذي يحمل هذا الاسم ويقود إلى خارج مجلد التطبيق. يتوقف النشر عند ملف ثنائي غير صالح للاستخدام قبل شراء خادم. أعد بناء الملف الثنائي قبل أي نشر يُفترض أن يحمل تغييرًا.
ما يقرؤه import
يحدد
import --chain السلسلة التي صُمم لها التطبيق، والقيمة الافتراضية solana.كيف يقرأ import مجلدًا
قد يكون المجلد مجلدًا استنسخته قبل دقيقة، لذا يقرؤه
import بحذر.- يُنشأ
erpc.tomlمن جديد. عندما يوجد أي شيء في ذلك المسار، يرفضimportالعمل: فهو لا يكتب أبدًا فوق ملف ولا عبر رابط. - يقرأ الملفات العادية داخل المجلد، حتى 1 MiB لكل ملف. لا تُقرأ الروابط التي تقود إلى خارج المجلد، ولا الأنابيب، ولا ملفات الأجهزة، ولا الملفات الأكبر، ولا الملفات التي ليست بترميز UTF-8، ويُذكر كل منها.
- لا تُنسخ أي قيمة يعدّها سرًّا. فهو يبحث عن بيانات الاعتماد بحسب شكلها، لذا فإن الفحص شبكة التقاط وليس برهانًا: السر الذي يأتي بشكل لا يعرفه يُنسخ مثل أي قيمة. و
erpc.tomlملفك لتقرأه قبل أن تودعه في المستودع. - يحذّر
erpc worker checkمن أنواع أقل مما يمتنعimportعن نسخه. فهو لا يقول شيئًا عن عنوان URL لـ RPC يحمل مفتاحًا في مساره، ولا عن عبارة استرداد، ضمن[vars]: احفظ هذه القيم باستخدامerpc worker secret put.
ما يجده تطبيقك على الخادم
- تصل الإعدادات كمتغيرات بيئة،
[vars]و[secrets]على حد سواء. لا يوجد.envعلى الخادم، والتطبيق الذي يقرأ ملف.envبمكتبة dotenv يستمر في العمل. - مجلده الخاص للقراءة فقط. الملفات التي يكتبها توضع تحت المجلد الذي يحدده
ERPC_WORKER_STATE_DIR(وهو أيضًاHOMEالخاص به)، والذي يحتفظ به النشر وينسخهerpc worker backupاحتياطيًا. - يصل مفتاح التداول عبر أنبوب، لا في ملف: 64 بايتًا على واصف الملف الذي يحدده
ERPC_WORKER_KEY_FD، مرة واحدة، عند بدء التطبيق، مع المفتاح العام فيERPC_WORKER_PUBKEY. والتطبيق الذي يقرأ ملف مفتاح يحتاج إلى تغيير تلك القراءة الواحدة؛ ويوضح ذلك الملفsrc/wallet.rsفي قالب pumpfun. - التطبيق ملف ثنائي واحد والملفات التي يسردها
run.files. وأي شيء آخر يفتحه أثناء التشغيل يجب أن يكون في تلك القائمة.
الخطوات التالية
- المفاتيح والأسرار: احفظ الإعدادات التي امتنع
importعن نسخها، ومفتاح التداول. - جدار الحماية وWAF: اختر من يمكنه الوصول إلى التطبيق.
- دليل الـ worker: كل ملف يقرؤه
import، وأشكال بيانات الاعتماد التي يبحث عنها.






