Installation
A single instance Interactor® is available as a docker image. You may start an instance of Interactor using the following docker-compose.yaml.
Pre-requisite
- Make sure Docker is running in your system.
Steps
Step 1. Create a docker-compose.yaml file in a directory of your choice. The code is provided below.
Step 2. Start Interactor by issuing the following command from the same directory as the docker-compose.yaml.
docker compose up
Step 3. Browse to localhost:4000 to access Interactor Engine Admin.
Docker Compose File
version: '3'
services:
db:
image: postgres:15
restart: always
environment:
POSTGRES_DB: interactor
POSTGRES_USER: interactor
POSTGRES_PASSWORD: interactor
ports:
- 5432:5432
healthcheck:
test: /usr/bin/pg_isready -h localhost -U $$POSTGRES_USER
interval: 1s
timeout: 10s
retries: 120
volumes:
- ./data-postgres:/var/lib/postgresql/data
interactor-language-javascript:
image: interactor/interactor-language-javascript:latest
pull_policy: always
restart: always
interactor:
image: interactor/interactor:latest
depends_on:
- db
ports:
- 1290:1290
- 4000:4000
environment:
PGUSER: interactor
INTERACTOR_DATASTORE: postgres
INTERACTOR_POSTGRES_DB: interactor
INTERACTOR_POSTGRES_USER: interactor
INTERACTOR_POSTGRES_PASSWORD: interactor
INTERACTOR_POSTGRES_HOSTNAME: db
INTERACTOR_JAVASCRIPT_ADAPTER_ADDRESS: interactor-language-javascript
INTERACTOR_MANAGER_API_KEY: default
# Access-Control-Allow-Origin setting for CORS. Space separated list of URLs. * indicates all origins. CORS is disabled without this value.
# INTERACTOR_CORS_ORIGIN: *
INTERACTOR_HISTORY: redis://redis:6379
pull_policy: always
restart: always
redis:
image: redis:alpine
restart: always
ports:
- 6379:6379
Once interactor Engine is installed, it may be customized using HTTP REST API operations.
- Add and enable connectors for the platform users
- Notification port (Could be part of env var, but able to change using API)
- User role definition and access control
Default settings
-
The latest official release of Interactor image is on
interactor/interactor:latest
. -
Interactor environment variable INTERACTOR_MANAGER_API_KEY is set to
default
.- Everybody who installs the unlicensed version has the same
default
API Key - API Key is can be updated with an official Interactor license
- Everybody who installs the unlicensed version has the same
How API key is used
Once you are ready to deploy, you enter the API Key of your choice. Your API Key can be any string value.
When making API call the Interactor engine, API Key is entered in the header.
API Call
curl --location 'http://localhost:1290/v1/connector' --header 'api_key: default'
A licensed version of Interactor is needed to change the API Key.
INTERACTOR_MANAGER_API_KEY is ignored without a license.
- It is recommended that you change the API Key for security reasons.
- The API Key is for using Interactor through API calls.
- API calls are authenticated using API Key that is shared between the UI and Interactor.
Deleting existing database
If you want to clear your database, remove ./data-postgres
directory if exists. This resets everything to a new installation.
rm -r data-postgres
Ports opened on the docker
5432: PostgreSQL Database
4000: Interactor user interface
1290: API calls