AWS EC2
Associate an Elastic IP for a stable IPv4. AWS charges for public IPv4 addresses.
Official IP guide ↗ServLoci IP Manager · ₹200/month or ₹2,400/year
Generate one private command, run it on AWS, Google Cloud, Azure, Oracle Cloud, Vultr, or another Linux VM, and track its reserved IPv4/IPv6, broker environments, and health from one place. Code running on that VM uses the VM's provider address as its exit identity.
Safer by design: ServLoci never receives a cloud password, API key, or SSH private key. The enrollment token works once for 15 minutes. The resulting machine credential is root-readable, limited to health reporting, and revocable from your portal.
sudo servloci-agent-uninstall on the VPS to remove only its heartbeat service.Pick Ubuntu 24.04 or Debian 12, an x86_64 or ARM64 machine, and at least 1 GB RAM. Dual-stack IPv4 + IPv6 is the safest default; some broker allowlists still require IPv4. Free-tier eligibility and public-IP charges depend on your account and region.
Associate an Elastic IP for a stable IPv4. AWS charges for public IPv4 addresses.
Official IP guide ↗Reserve a static external address and attach it to the VM network interface.
Official IP guide ↗Use a Standard SKU public IP with static allocation on the VM NIC.
Official IP guide ↗Assign a reserved public IP; it survives instance replacement until you delete it.
Official IP guide ↗Choose dual-stack at instance creation; the same installer works through startup user data.
Official IP guide ↗servloci-doctor.less servloci-install.sh lets you review every command before root execution./opt/servloci.servloci-doctor prints detected IPv4, IPv6, architecture, and installed environments.curl -fsSL https://comm.servloci.in/install.sh -o servloci-install.sh
less servloci-install.sh
sudo bash servloci-install.shThis public command installs the tooling without an IP Manager subscription or portal connection. The ₹200/month IP Manager plan adds private enrollment, installation inventory, and heartbeat health through the command generated under My connected VPS. Re-running either installer is safe.
Each broker gets its own virtual environment, so incompatible SDK dependency versions cannot damage the others.
dhanhqservloci-python dhan bot.pykiteconnectservloci-python kite bot.pygrowwapiservloci-python groww bot.pyfyers-apiv3servloci-python fyers bot.pyupstox-python-sdkservloci-python upstox bot.pybreeze-connectservloci-python icicidirect bot.pyofficial Kotak Neo API v2 · GitHubservloci-python kotak bot.py# Show public IPv4/IPv6 and installed environments
servloci-doctor
# Run your code with one broker SDK
servloci-python dhan bot.py
servloci-python kite bot.py
# Add a package to one isolated environment
sudo servloci-pip dhan install pandasPaste this as user data while creating a new Ubuntu/Debian VM. Cloud-init runs it as root during first boot. Installation can take several minutes because all broker packages are kept separate.
#cloud-config
package_update: true
runcmd:
- [bash, -lc, "curl -fsSL https://comm.servloci.in/install.sh -o /tmp/servloci-install.sh && bash /tmp/servloci-install.sh"]Cloud-init performs an unmanaged install. Do not put the private enrollment command or broker secrets in user data because it may remain visible in the cloud console and instance metadata. Connect the machine from the portal after first boot.
Confirm the public IP, add that exact address to your broker’s allowlist, then run a read-only profile or funds call before enabling any order code.
servloci-doctor
# Confirm imports without using broker credentials
servloci-python dhan -c 'import dhanhq; print("Dhan SDK ready")'
servloci-python kite -c 'import kiteconnect; print("Kite SDK ready")'
# Then use the read-only example for your broker:
# https://comm.servloci.in/docs/quickstart