Docker Deployment
This guide covers the deployment details for a Docker-based deployment of evoML.
Requirements
System Requirements
- Any Linux-based distribution
- Pre-installed Docker engine
Hardware Requirements
Minimum Requirements
Resource | Minimum requirement |
---|---|
CPU | 32 Cores x86_64 (amd64) CPU architecture |
Memory | At least 64GB of RAM |
Storage | At least 400 GB (SSD/HDD) |
Recommended Requirements
Resource | Recommendation |
---|---|
CPU | 64 Cores x86_64 (amd64) CPU architecture |
Memory | At least 128GB of RAM |
Storage | At least 400 GB (SSD/HDD) |
Volume asset requirements
Check that your Docker environment is configured properly
We will provide you a script to ensure that your environment is configured properly.
Accessing evoML images
evoML configuration files are based on multiple docker compose and .env files.
The images that configuration files use are:
- evoML 20 private image that contains our in-house core components
- Secondary publicly available services (22 images) that evoML require to operate:
Name | Registry | Provider | Version |
---|---|---|---|
Mongodb | Docker | Mongo | 7.0.6-jammy |
Minio | Docker | Minio | RELEASE.2024-02-26T09-33-48Z |
Postgres | Docker | Postgres | 15-alpine |
RabbitMQ | Docker | RabbitMQ | 3.13-management-alpine |
Ray | Docker | Rayproject | 2.9.3-py310-cpu |
API Gateway | Docker | Traefik | v2.11 |
Kafka/Red panda | Docker | Redpanda | v23.2.26 |
Redis | Docker | Redis | 7-alpine |
API Companion | Docker | Transloadit | 4.12.3 |
The images can be accessed using one of the two options below:
Option 1: Dockerhub private and public images
evoML images are available on Dockerhub, at: https://hub.docker.com/?namespace=turintech
Sign in to your Dockerhub account to access the images.
- Create a Dockerhub account
- Download evoML images from Dockerhub
- Download the CLI provided with the images
- Run the CLI provided with the images on your configured environment (Kubernetes or Docker)
Option 2: AWS
Installation
We support installation of the platform regardless of the connectivity conditions of the target machine.
The following sections describe how to install evoML on docker based machines with internet access and on air-gapped environments.
Machine with access to the internet:
TurinTech shares a single tar bundle via email, sftp, etc., containing:
(i) Docker compose files
(ii) .env files
(iii) Makefile
The user is expected to:
- Untar the bundle tar file
tar -xvf evoml.tar
- Login to evoML image registry
- Deploy evoML
make deploy
- Create a
Super Admin
usermake create-users
Machine without access to the internet (Air-gapped installation):
- We share a single tar bundle (via email, sftp, etc.), containing:
(i) Docker compose files
(ii) .env files (iii) Makefile (iv) All extracted images that evoML requires on a single tar file - Untar the bundle tar file (tar -xvf evoml.tar)
- Load images to docker engine
docker load –i assets/bundle.tar
- Deploy evoML
make deploy
- Create super admin user
make create-users