Deploy aplikasi yang sudah Anda miliki dengan erpc worker import
erpc worker import mengambil aplikasi yang sudah Anda miliki, apa adanya. Perintah ini menulis erpc.toml milik aplikasi dan tidak mengubah kodenya sama sekali.Halaman ini menjelaskan ERPC CLI
v0.1.0-rc.4, versi pra-rilis.Impor dan deploy
Aplikasi tersebut bisa berupa bot yang saat ini berjalan di bawah systemd atau Docker, atau layanan dalam bahasa lain.
import membaca direktori aplikasi dan menulis erpc.toml yang digambarkan oleh direktori tersebut. Tidak ada hal lain yang ditulis di aplikasi, tidak ada yang dijalankan di dalamnya, dan kodenya tidak diubah. erpc menambahkan aplikasi ke daftarnya sendiri, seperti yang dilakukan init.bash
- Package Cargo di-build dengan
cargo build --release, sama seperti aplikasi yang dibuat olehinit. Aplikasi dinamai sesuai package kecuali--namemenentukan lain, dan--binmemilih biner jika package memiliki beberapa biner. Root workspace ditolak: arahkanimportke package-nya. - Biner Linux yang di-build di mana saja, dalam bahasa apa pun, di-deploy dengan cara yang sama menggunakan
--binary <PATH>, dan dikirim apa adanya. erpc membaca header-nya dan menolak biner yang tidak dapat dijalankan server: biner macOS atau Windows, skrip, shared library, file yang terpotong, atau arsitektur selainbuild.target. Biner harus statis, atau di-link ke glibc dengan loader-nya di path yang biasa. Biner ini adalah file milik aplikasi: link dengan nama tersebut yang mengarah keluar dari direktori aplikasi ditolak. Jika biner tidak dapat dipakai, deploy berhenti sebelum server dibeli. Build ulang biner sebelum deploy yang dimaksudkan untuk membawa perubahan.
Yang dibaca import
import --chain menyebutkan chain tujuan aplikasi, solana secara default.Cara import membaca direktori
Direktori tersebut mungkin baru Anda clone semenit yang lalu, jadi
import membacanya dengan hati-hati.erpc.tomldibuat baru. Jika sudah ada sesuatu di path tersebut,importmenolak: perintah ini tidak pernah menimpa file atau menulis melalui link.- Perintah ini membaca file biasa di dalam direktori, hingga 1 MiB per file. Link yang mengarah keluar dari direktori, pipe, device, file yang lebih besar, dan file yang bukan UTF-8 tidak dibaca, dan masing-masing disebutkan.
- Tidak satu pun nilai yang dianggapnya secret disalin. Perintah ini mencari kredensial berdasarkan bentuknya, jadi pemeriksaan ini adalah jaring pengaman, bukan bukti: secret dalam bentuk yang tidak dikenalinya disalin seperti nilai lainnya. Andalah yang perlu membaca
erpc.tomlsebelum meng-commit-nya. erpc worker checkmemperingatkan lebih sedikit jenis daripada yang ditahan olehimport. Perintah ini tidak memperingatkan apa pun tentang URL RPC dengan kunci di path-nya, atau tentang frasa pemulihan, di bawah[vars]: simpan keduanya denganerpc worker secret put.
Yang ditemukan aplikasi Anda di server
- Pengaturan diterima sebagai variabel lingkungan, baik
[vars]maupun[secrets]. Tidak ada.envdi server, dan aplikasi yang membaca file.envdengan library dotenv tetap berfungsi. - Direktori aplikasi itu sendiri bersifat read-only. File yang ditulisnya disimpan di bawah direktori yang disebut oleh
ERPC_WORKER_STATE_DIR(jugaHOMEmiliknya), yang dipertahankan saat deploy dan di-backup oleherpc worker backup. - Kunci trading tiba melalui pipe, bukan di file: 64 byte pada file descriptor yang disebut oleh
ERPC_WORKER_KEY_FD, sekali, saat aplikasi mulai berjalan, dengan kunci publik diERPC_WORKER_PUBKEY. Aplikasi yang membaca file kunci perlu mengubah satu pembacaan tersebut;src/wallet.rsmilik template pumpfun menunjukkan caranya. - Aplikasi ini terdiri dari satu biner dan file yang dicantumkan di
run.files. Apa pun lainnya yang dibukanya saat berjalan harus ada di daftar tersebut.
Langkah Selanjutnya
- Kunci dan secret: Simpan pengaturan yang ditahan oleh
import, serta kunci trading. - Firewall dan WAF: Tentukan siapa yang boleh menjangkau aplikasi.
- Panduan worker: Setiap file yang dibaca oleh
import, dan bentuk kredensial yang dicarinya.






