Implante uma aplicação que você já tem com o erpc worker import
O
erpc worker import recebe uma aplicação que você já tem, do jeito que ela está. Ele escreve o erpc.toml da aplicação e não altera nada do código dela.Esta página descreve o ERPC CLI
v0.1.0-rc.4, uma versão de pré-lançamento.Importar e implantar
A aplicação pode ser um bot que hoje roda sob systemd ou Docker, ou um serviço em outra linguagem. O
import lê o diretório da aplicação e escreve o erpc.toml que corresponde ao que ele encontra ali. Nada mais é escrito na aplicação, nada nela é executado e o código dela não é alterado. O erpc adiciona a aplicação à própria lista, como o init faz.bash
- Um pacote Cargo é compilado com
cargo build --release, como uma aplicação criada peloinit. A aplicação recebe o nome do pacote, a menos que--nameindique outro, e--binescolhe o binário quando o pacote tem vários. A raiz de um workspace é recusada: aponte oimportpara o pacote. - Um binário Linux compilado em qualquer lugar, em qualquer linguagem, é implantado da mesma forma com
--binary <PATH>e enviado como está. O erpc lê o cabeçalho dele e recusa um binário que o servidor não consegue executar: um binário de macOS ou Windows, um script, uma biblioteca compartilhada, um arquivo truncado ou uma arquitetura diferente debuild.target. O binário precisa ser estático, ou linkado à glibc com o loader no caminho habitual. Ele é um arquivo da aplicação: um link com esse nome que leva para fora do diretório da aplicação é recusado. Uma implantação para diante de um binário inutilizável antes de um servidor ser comprado. Compile o binário de novo antes de uma implantação que deva levar uma alteração.
O que o import lê
O
import --chain indica a chain da aplicação, solana por padrão.Como o import lê um diretório
O diretório pode ser um que você clonou há um minuto, então o
import o lê com cuidado.- O
erpc.tomlé criado do zero. Quando existe qualquer coisa nesse caminho, oimportrecusa: ele nunca escreve por cima de um arquivo nem através de um link. - Ele lê arquivos regulares dentro do diretório, de até 1 MiB cada. Um link que leva para fora do diretório, um pipe, um dispositivo, um arquivo maior e um arquivo que não está em UTF-8 não são lidos, e cada um deles é informado.
- Nenhum valor que ele toma por segredo é copiado. Ele procura credenciais pelo formato, então a verificação é uma rede, não uma prova: um segredo em um formato que ele não conhece é copiado como qualquer outro valor. Cabe a você ler o
erpc.tomlantes de fazer o commit. - O
erpc worker checkavisa sobre menos tipos do que oimportretém. Ele não diz nada sobre uma URL de RPC com uma chave no caminho, nem sobre uma frase de recuperação, em[vars]: guarde esses valores comerpc worker secret put.
O que sua aplicação encontra no servidor
- As configurações chegam como variáveis de ambiente, tanto as de
[vars]quanto as de[secrets]. Não há.envno servidor, e uma aplicação que lê um arquivo.envcom uma biblioteca dotenv continua funcionando. - O próprio diretório da aplicação é somente leitura. Os arquivos que ela escreve ficam no diretório indicado por
ERPC_WORKER_STATE_DIR(que também é oHOMEdela), que uma implantação mantém e que oerpc worker backupinclui no backup. - Uma chave de trading chega por um pipe, não em um arquivo: 64 bytes no descritor de arquivo indicado por
ERPC_WORKER_KEY_FD, uma única vez, quando a aplicação inicia, com a chave pública emERPC_WORKER_PUBKEY. Uma aplicação que lê um arquivo de chave só precisa mudar essa leitura; osrc/wallet.rsdo modelo pumpfun mostra como. - Ela é um binário e os arquivos que
run.fileslista. Qualquer outra coisa que ela abra em tempo de execução precisa estar nessa lista.
Próximos passos
- Chaves e segredos: Guarde as configurações que o
importreteve e a chave de trading. - Firewall e WAF: Escolha quem pode acessar a aplicação.
- O guia do worker: Todos os arquivos que o
importlê e os formatos de credencial que ele procura.






