Eine vorhandene Anwendung mit erpc worker import bereitstellen
erpc worker import übernimmt eine vorhandene Anwendung so, wie sie ist. Es schreibt die erpc.toml der Anwendung und ändert nichts an ihrem Code.Diese Seite beschreibt ERPC CLI
v0.1.0-rc.4, eine Vorabversion.Importieren und bereitstellen
Die Anwendung kann ein Bot sein, der heute unter systemd oder Docker läuft, oder ein Dienst in einer anderen Sprache.
import liest das Verzeichnis der Anwendung und schreibt die erpc.toml, die das Verzeichnis beschreibt. Sonst wird nichts in die Anwendung geschrieben, nichts darin ausgeführt, und ihr Code wird nicht geändert. erpc nimmt die Anwendung in seine eigene Liste auf, wie bei init.bash
- Ein Cargo-Paket wird mit
cargo build --releasegebaut, wie eine mitiniterstellte Anwendung. Die Anwendung wird nach dem Paket benannt, sofern--namenichts anderes angibt, und--binwählt die Binärdatei, wenn das Paket mehrere hat. Ein Workspace-Root wird abgelehnt: Richten Sieimportauf das Paket. - Eine Linux-Binärdatei, irgendwo und in beliebiger Sprache gebaut, wird mit
--binary <PATH>auf dieselbe Weise bereitgestellt und unverändert ausgeliefert. erpc liest ihren Header und lehnt eine ab, die ein Server nicht ausführen kann: eine macOS- oder Windows-Binärdatei, ein Skript, eine Shared Library, eine abgeschnittene Datei oder eine andere Architektur alsbuild.target. Die Binärdatei muss statisch oder gegen glibc gelinkt sein, mit ihrem Loader am üblichen Pfad. Sie ist eine Datei der Anwendung: Ein Link unter diesem Namen, der aus dem Verzeichnis der Anwendung herausführt, wird abgelehnt. Eine Bereitstellung stoppt bei einer unbrauchbaren Binärdatei, bevor ein Server gekauft wird. Bauen Sie die Binärdatei neu, bevor Sie eine Bereitstellung starten, die eine Änderung mitbringen soll.
Was import liest
import --chain nennt die Chain, für die die Anwendung bestimmt ist, standardmäßig solana.Wie import ein Verzeichnis liest
Das Verzeichnis kann eines sein, das Sie vor einer Minute geklont haben, daher liest
import es mit Vorsicht.erpc.tomlwird neu erstellt. Liegt unter diesem Pfad bereits irgendetwas, lehntimportab: Es schreibt nie über eine Datei und nie durch einen Link.- Es liest reguläre Dateien innerhalb des Verzeichnisses, bis zu 1 MiB pro Datei. Ein Link, der aus dem Verzeichnis herausführt, eine Pipe, ein Gerät, eine größere Datei und eine Datei, die nicht UTF-8 ist, werden nicht gelesen, und jeder dieser Fälle wird gemeldet.
- Kein Wert, den es für ein Secret hält, wird kopiert. Es erkennt Zugangsdaten an ihrer Form, die Prüfung ist also ein Netz, kein Beweis: Ein Secret in einer Form, die es nicht kennt, wird wie jeder andere Wert kopiert. Es liegt bei Ihnen,
erpc.tomlzu lesen, bevor Sie die Datei committen. erpc worker checkwarnt vor weniger Arten, alsimportzurückhält. Es sagt nichts zu einer RPC-URL mit einem Schlüssel im Pfad oder zu einer Wiederherstellungsphrase unter[vars]: Bewahren Sie diese miterpc worker secret putauf.
Was Ihre Anwendung auf dem Server vorfindet
- Einstellungen kommen als Umgebungsvariablen an,
[vars]und[secrets]gleichermaßen. Auf dem Server gibt es keine.env, und eine Anwendung, die eine.env-Datei mit einer dotenv-Bibliothek liest, funktioniert weiterhin. - Ihr eigenes Verzeichnis ist schreibgeschützt. Dateien, die sie schreibt, landen unter dem Verzeichnis, das
ERPC_WORKER_STATE_DIRnennt (auch ihrHOME); eine Bereitstellung behält dieses Verzeichnis, underpc worker backupsichert es. - Ein Trading-Schlüssel kommt über eine Pipe an, nicht in einer Datei: 64 Bytes auf dem Dateideskriptor, den
ERPC_WORKER_KEY_FDnennt, einmal, beim Start der Anwendung, mit dem öffentlichen Schlüssel inERPC_WORKER_PUBKEY. Bei einer Anwendung, die eine Schlüsseldatei liest, ist dieser eine Lesevorgang zu ändern;src/wallet.rsder Vorlage pumpfun zeigt, wie. - Sie besteht aus einer Binärdatei und den Dateien, die
run.filesauflistet. Alles andere, was sie zur Laufzeit öffnet, muss in dieser Liste stehen.
Nächste Schritte
- Schlüssel und Secrets: Bewahren Sie die Einstellungen auf, die
importzurückgehalten hat, und den Trading-Schlüssel. - Firewall und WAF: Legen Sie fest, wer die Anwendung erreichen darf.
- Der Worker-Leitfaden: Jede Datei, die
importliest, und die Formen von Zugangsdaten, nach denen es sucht.






