Automated Setup

Provision a server and deploy the full OpenScan.AI stack in one automated run — repeatable and scriptable.

Use this method when you want self-hosting without hand-holding each step, or when you deploy explorers for multiple chains and need consistency.


What the Automation Does

  1. Prepares the server: updates, Docker installation, firewall rules
  2. Creates deployment directories and renders configuration from your variables
  3. Pulls container images and initializes the database
  4. Starts the stack and runs health checks
  5. Optionally configures a reverse proxy with TLS (see TLS / HTTPS Setup)

Prerequisites

  • A fresh Ubuntu 22.04 server meeting the Hardware Requirements
  • SSH access with sudo
  • Ansible installed on your workstation: pip install ansible
  • A synced EVM node endpoint for your chain

Inventory and Variables

Create an inventory file hosts.ini:

[explorer]
explorer-1 ansible_host=203.0.113.10 ansible_user=ubuntu

And group variables in group_vars/explorer.yml:

chain_id: 50
network_name: "Your Chain"
coin_symbol: XYZ
jsonrpc_http_url: "http://your-chain-node:8545"
jsonrpc_trace_url: "http://your-chain-node:8545"
explorer_domain: "explorer.yourchain.example"
db_password: "{{ vault_db_password }}" # keep secrets in Ansible Vault

Run

Terminal window
ansible-playbook -i hosts.ini site.yml

The playbook is idempotent — re-running it converges the server to the desired state without duplicating work.

After the Run

  • Verify with the Explorer Verification checklist.
  • Set up Monitoring.
  • Store your inventory, variables, and vault files in version control so the deployment is reproducible.

Multi-Chain Use

Parameterize one inventory group per chain and reuse the same playbook. Keep databases and volumes strictly separate per chain — see Instance Management.

Prefer Not to Automate?