You are viewing the RapidMiner Hub documentation for version 10.0 - Check here for latest version
Docker image for RapidMiner Server
The documentation below describes the following Docker image:
- RapidMiner Server (
rapidminer/rapidminer-server:latest
) - RapidMiner Server with Python Environment Manager support (
rapidminer/rapidminer-server:latest-python
)
This image is available for download on Docker Hub.
Description
This image contains a RapidMiner Server instance, which lets you collaborate and deploy to production, using a scalable architecture. It needs at least one connected Job Agent to be able to execute RapidMiner processes.
For available versions, please see the tags:
We created a self-contained deployment for trial and testing purposes, containing an embedded Job Agent and an database. You should only use this to get a feel for RapidMiner Server and its features. Read the specifics of a self-contained deployment below.
Bootstrap procedure
RapidMiner Server persist the user configuration in a Database and in the RapidMiner home directory volume. The image can be used with and also without existing persistent configuration. We implemented an optional initialization procedure and a mandatory startup procedure, that is executed on every container startup.
Starting without existing RapidMiner home volume mounted (empty mount point) and empty database will trigger the initialization procedure:
- Initializes the mounted empty volume with the default RapidMiner Home folder content
- Executes the RapidMiner database initialization using its default content (during the RapidMiner Server / JBoss startup using the Hibernate technology)
Providing an existing (not empty) RapidMiner home volume and initialized RapidMiner database content will skip the initialization procedure and continue with the startup procedure:
- Optionally configure the database connection (host, port, username and password) if provided using external parameters
- Optionally configure the ActiveMQ credentials (username and password) if provided using external parameters
- Start RapidMiner Server / JBoss.
Configuration
- Volumes
$persistent-rapidminer-home
: volume mount which stores the RapidMiner home folder, including all the configuration files, extensions, licenses, logs and repository data. See the data persistence chapter below for more details.
- Ports:
- ports 1081 and 1082, used for Radoop Proxy communication
- port 8080, used for the web interface
- Environment variables:
- Please see AI Hub/Server Environment Variables
Data persistence
The RapidMiner home directory stores all the data and configuration connected with the RapidMiner Server image.
To make this data persistent, make sure to start the container with a volume mounted on the mount point /aihub_base_dir
.
- If the mounted volume is empty, then a default configuration and data content will be propagated to it for use by RapidMiner Server during the initialization phase.
- If the volume contains data from any previous executions, then the server will be started with that data.
This volume will contain all the configuration files, extensions, licenses, logs and repository data. After the first execution (with a mounted empty volume), the following data can be edited:
- Extensions can be installed by adding them to the folder
<volume>/resources/extensions
- Licences can be installed in
<volume>/resources/licenses
- The configuration can be tuned via files stored in
<volume>/configuration
Good to know
- RapidMiner Server requires at least 8GB of memory. On Windows hosts, please make sure that the Docker Engine is configured to run with enough memory.
- The licenses mount point should be a standard RapidMiner licenses folder, containing the license files in subfolders named
rapidminer-server
,rapidminer-studio
,radoop
. - To mount volumes on a Windows system you should pay attention to the Windows-specific Docker volume mount settings:
- Make sure the drive is shared in the Docker settings
- If using docker-compose, consider setting the environment variable "COMPOSE_CONVERT_WINDOWS_PATHS=1"
- Make sure that Docker can read and write the mounted files and folders