Categories

Versions

You are viewing the RapidMiner Go documentation for version 9.6 - Check here for latest version

Install RapidMiner Go

Prerequisites

You need to have the following installed and running on your machine:

  • Docker >= v18.09
  • docker-compose >= 1.23

To read more how to install docker and docker-compose on your platform see:

You need to grant at least 8GiB memory to the Docker Engine for a decent performance.

Docker Images

The application is composed of several images:

  • rapidminer-automodel-routing : Routing NGINX reverse proxy
  • rapidminer-automodel-rmid : RMID - authentication and authorization service
  • rapidminer-automodeler : RapidMiner Go - the automatic modeling and prediction service
  • rapidminer-automodel-job-container : Job Container - execution backend for RapidMiner Go
  • rapidminer-ui-event-tracking : EventTracking - analytics service

Each service can be customized by setting environment variables in docker-compose-services.yml. For configuration options check the relevant sub-pages.

The images of for the individual services are available on Docker Hub

Compose

Please download and unzip the docker files here.

The full stack can be composed using two files:

  • docker-compose-infra.yml : contains all the infrastructural needs for the application stack
  • docker-compose-services.yml : contains all the services configured

To start the full stack execute the following steps:

  • Copy your RapidMiner Go license on your host into licenses/rapidminer-auto-model directory
  • Edit the .env file and make sure it contains the following:
IMAGE_TAG_ROUTING=2.3.0
IMAGE_TAG_RMID=2.2.0
IMAGE_TAG_AM=2.3.0
IMAGE_TAG_JC=2.2.0
IMAGE_TAG_ET=2.0.0
AUTH_SECRET=your_base64_encoded_secret
BASE_URL=http://localhost:30000
  • IMAGE_TAGs identify the build versions to be used for composing.
  • AUTH_SECRET is the secret used for signing and validating the authentication tokens used by the applications -- it has to be a Base64 encoded string.
  • BASE_URL is the external base URL visible on the frontend - e.g. http://localhost:30000

Important: The databases and the AMQ broker use the default passwords. It is not recommended to use these in production. Follow the guide below to change the default passwords.

  • if you have already installed a previous version of RapidMiner Go - stop and remove running containers, remove docker images of previous versions before proceeding
  • Execute docker-compose -f docker-compose-infra.yml up -d
  • Execute docker-compose -f docker-compose-services.yml up -d
  • Wait for ~2-3 minutes depending on your machine to have all the services available

To check logs of individual applications:

  • Execute docker-compose -f docker-compose-STACK.yml logs SERVICE_NAME where STACK is the postfix of the yml file's name and SERVICE_NAME is the name of the service which logs you want to display (use compose yml's service names (which are the direct children of services: node, e.g.: rapidminer-automodeler)

To shut down the full stack:

  • First shut down services by executing docker-compose -f docker-compose-services.yml down
  • Then shut down infrastructure via docker-compose -f docker-compose-infra.yml down

Try

  • Open application on http://localhost:30000
  • Use admin and changeit for user/password

  • For creating additional users check RMID docs

Changing the default passwords

You should change the default database passwords for users rmid and cookie in docker-entrypoint-initdb.d/init-user-db.sh :

 CREATE USER cookie WITH ENCRYPTED PASSWORD 'automodel_db_password';
 ...
 CREATE USER rmid WITH ENCRYPTED PASSWORD 'rmid_db_password';

Then you should provide the same passwords by adding new environment variables to the services in docker-compose-services.yml:

  rapidminer-automodeler:
    image: rapidminer/rapidminer-automodeler:${IMAGE_TAG}
    environment:
      ...
      DB_PASSWORD: <automodel_db_password>
      ...
  rapidminer-automodel-rmid:
    image: rapidminer/rapidminer-automodel-rmid:${IMAGE_TAG}
    environment:
      ...
      DB_PASSWORD: <rmid_db_password>
      ...
  rapidminer-ui-event-tracking:
    image: rapidminer/rapidminer-ui-event-tracking:${IMAGE_TAG}
    environment:
      ...
      DB_PASSWORD: <automodel_db_password>
      ...

The default database is PostgreSQL 9.6, exposed by default on port 5432 of localhost. Direct connections are possible via any database console or a tool such as pgAdmin. The default password can be changed in docker-compose-infra.yml

  rapidminer-automodel-db:
    image: postgres:9.6.6
    volumes:
      - rapidminer_automodel_dbdata:/var/lib/postgresql/data
      - ./docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
    environment:
          POSTGRES_PASSWORD: cookiepass
          POSTGRES_USER: cookie
    ports:
      - "5432:5432"

To further improve security, the ActiveMQ password should also be added as a new environment variable in docker-compose-infra.yml :

  rapidminer-automodel-activemq:
    image: webcenter/activemq:5.13.1
    environment:
      ...
      ACTIVEMQ_ADMIN_LOGIN: admin
      ACTIVEMQ_ADMIN_PASSWORD: admin
      ACTIVEMQ_OWNER_PASSWORD: <amq_password>
      ...
    ports:
      - "8161:8161"

Then provide the same password as a new environment variable to services in docker-compose-services.yml:

  rapidminer-automodeler:
      ...
      AMQ_PASSWORD: <amq_password>
      ...
  rapidminer-automodel-job-container:
      ...
      AMQ_PASSWORD: <amq_password>
      ...

An admin console is also exposed for ActiveMQ. Use the ACTIVEMQ_ADMIN credentials to access the admin monitoring tool of ActiveMQ in your browser at http://localhost:8161/admin/queues.jsp.