ð How to Launch Our Template on Railway
Follow these simple steps to deploy the Drosera Operator template on railway.app:
Prerequisitesâ
- Railway Account: Sign up or log in to railway.app.
- GitHub Account(optional): Ensure you have a GitHub account. This allows you to use the full version of the free trial (without a github account, you will have to pay for a non-free tier in order to deploy the templates).
- Ethereum Private Key: Your operator will be launched with an Ethereum account so you will need the account private key and the account will need some $ETH on the account. Currently we are only supporting Holesky testnet. You can get Holesky $ETH from a faucet of your choosing. You can get a Holesky account private key through online wallets, execution client commands, etc. Please always keep security in mind when obtaining and using private keys for any crypto application.
- Ethereum RPC URL: Currently we only support Holesky RPC endpoints. Public Holesky RPC endpoints are available but the free offerings typically have strong rate limiting in place and won't function properly with the operator node. You can purchase an API key from node providers like Alchemy to get better response times and rate freedom. You can also choose to run your own Holesky RPC node and expose it to your operator.
Instructionsâ
There are two very similar railway templates for running an operator
Deploy only the Drosera Operatorâ
This option allows you to run a stand-alone drosera operator. See Run the Node for more information regarding the operator software.
Deploy the templateâ
- View the template:
- Launch the project by clicking
Deploy drosera-operator
button. - Configure Environment Variables
- Example:
DRO-ETH-RPC_URL="https://ethereum-holesky-rpc.publicnode.com" # Change this to your Holesky RPC Node URL
DRO-ETH-PRIVATE_KEY="0x8406...3cdb9" # Changes this to your Holesky Ethereum Private Key
- Example:
- Deploy the service by pressing the
Deploy
button.
Enable Networkingâ
In order for liveness data for this operator to be seen on the frontend, we need to add an http proxy.
- Open the
Settings
tab of your service. - Navigate to the
Networking
section of the settings tab. - Click the
Generate Domain
button. - Select port
31314
port from the dropdown list (if you changed the DROSERVERPORT variable, choose the value you set). - Click the
Generate Domain
button again.
Redeploy the Operatorâ
Now we need to redeploy the service to pick up the networking changes
- Select the
Deployments
tab of your service. - In the green active deployment box, click the vertical 3 dot menu.
- Click
Redeploy
Deploy a protocol-level Drosera Operator on the Drosera Testnetâ
This option allows you to run an operator and delegation client for simple optin logic. See the Testnet Guide for more information about how this works. This option is for protocol-level Operators hand-selected by the Drosera Team for running public traps in our testnet.
Launch the project by clicking
Deploy drosera-operator (testnet)
button.Configure Environment Variables for both services. The environment variables with the same name should have the same values for each service.
- Example:
DRO-ETH-RPC_URL="https://ethereum-holesky-rpc.publicnode.com" # Change this to your Holesky RPC Node URL
DRO-ETH-PRIVATE_KEY="0x8406...3cdb9" # Changes this to your Holesky Ethereum Private Key
- Example:
Deploy the service by pressing the
Deploy
button.
Enable Networkingâ
In order for liveness data for this operator to be seen on the frontend, we need to add an http proxy.
- Open the
Settings
tab of your service. - Navigate to the
Networking
section of the settings tab. - Click the
Generate Domain
button. - Select port
31314
port from the dropdown list (if you changed the DROSERVERPORT variable, choose the value you set). - Click the
Generate Domain
button again.
Redeploy the Operatorâ
Now we need to redeploy the service to pick up the networking changes
- Select the
Deployments
tab of your service. - In the green active deployment box, click the vertical 3 dot menu.
- Click
Redeploy
Build or Deploy Errors ??â
- Check the Deployment Logs tab on your railway service for more details.
- Verify that all required environment variables are configured correctly.
Upgrading your Operator in Railwayâ
- Under the
Settings
section of each service, change theSource Image
tag to the most recent version to guarantee that the new version tag is applied. - Adjust the environment variable names to match any new changes to the drosera-operator and drosera-delegation-client
- Deploy the changes.
Enjoy using our template on Railway.app! ð