Deployment

Aiviro can be run locally at your computer or it can be deployed to a server with its orchestration system. For running it locally just follow the instructions in the Getting Started section. For deployment to a server, you can use the following instructions.

Note

Aiviro orchestration is deployed to a server with the help of docker & docker-compose. Therefore, you need to have docker & docker compose installed on your server.

  1. Connect to your server via ssh.

  2. Go to the directory where you want to deploy Aiviro. We recommend creating a new directory for it.

mkdir -p projects/aiviro  # create a new directory
cd projects/aiviro  # go to the directory
  1. Create and activate a python virtual environment.

python3 -m venv venv  # create a virtual environment
source venv/bin/activate  # activate the virtual environment
  1. Install Aiviro with Prefect extra dependencies.

pip install -i https://pypi.aiviro.com aiviro[prefect]
  1. Deploy Aiviro orchestration server. It contains server, database and web interface.

# deploying server with the default settings
aiviro-cli deploy server start --detach

# for information about custom deployment of the server, use --help option
aiviro-cli deploy server start --help
  1. Deploy Aiviro agent.

# deploying agent with the default settings
aiviro-cli deploy agent start --agent-name <your-agent-name> --git-url <repo-url-with-access-token> --label rdp --max-flows 1 --detach

# for information about custom deployment of the agent, use --help option
aiviro-cli deploy agent start --help
  1. Add aiviro configuration file and set API credentials.

aiviro-cli config login --client-id <your-client-id> --api-key <your-api-key> --output prefect-data/<agent-name>/volume/
  1. Open the web interface in your browser, default url is http://localhost:8080. Select the Flow tab, Hello World flow and run it, in order to validate your installation.

_images/orchestration_flow_tab.png

Web interface with selected Flow tab

_images/orchestration_flow_run.png

Detailed view of the Hello World flow

  1. To stop agent and server, use the following commands. You must be in the same directory where you deployed them.

# stop agent
aiviro-cli deploy agent stop --agent-name <your-agent-name>

# stop server
aiviro-cli deploy server stop