- Ubuntu machine
- install docker
git clone https://github.com/Datura-ai/compute-subnet.git
Run following command to install required tools:
cd compute-subnet && chmod +x scripts/install_executor_on_ubuntu.sh && scripts/install_executor_on_ubuntu.sh
if you don't have sudo on your machine, run
sed -i 's/sudo //g' scripts/install_executor_on_ubuntu.sh
to remove sudo from the setup script commands
Please follow this to setup docker for nvidia properly
- Go to executor root
cd neurons/executor
- Add .env in the project
cp .env.template .env
Add the correct miner wallet hotkey for MINER_HOTKEY_SS58_ADDRESS
.
You can change the ports for INTERNAL_PORT
, EXTERNAL_PORT
, SSH_PORT
based on your need.
- INTERNAL_PORT: internal port of your executor docker container
- EXTERNAL_PORT: external expose port of your executor docker container
- SSH_PORT: ssh port map into 22 of your executor docker container
- SSH_PUBLIC_PORT: [Optional] ssh public access port of your executor docker container. If
SSH_PUBLIC_PORT
is equal toSSH_PORT
then you don't have to specify this port. - MINER_HOTKEY_SS58_ADDRESS: the miner hotkey address
- RENTING_PORT_RANGE: The port range that are publicly accessible. This can be empty if all ports are open. Available formats are:
- Range Specification(
from-to
): Miners can specify a range of ports, such as 2000-2005. This means ports from 2000 to 2005 will be open for the validator to select. - Specific Ports(
port1,port2,port3
): Miners can specify individual ports, such as 2000,2001,2002. This means only ports 2000, 2001, and 2002 will be available for the validator. - Default Behavior: If no ports are specified, the validator will assume that all ports on the executor are available.
- Range Specification(
- RENTING_PORT_MAPPINGS: Internal, external port mappings. Use this env when you are using proxy in front of your executors and the internal port and external port can't be the same. You can ignore this env, if all ports are open or the internal and external ports are the same. example:
- if internal port 46681 is mapped to 56681 external port and internal port 46682 is mapped to 56682 external port, then RENTING_PORT_MAPPINGS="[[46681, 56681], [46682, 56682]]"
Note: Please use either RENTING_PORT_RANGE or RENTING_PORT_MAPPINGS and DO NOT use both of them if you have specific ports are available.
- RENTING_PRICE: The renting price per hour in USD.
- Run project
docker compose up -d