Skip to content

Aindo Toolkit Docker Image

The Aindo Toolkit is a ready to use Docker image designed to provide a seamless experience with the aindo.rdml library. By using this image, you can skip the complexities of managing Python versions, virtual environments, and CUDA dependencies.

It comes pre-configured with the core Aindo generative AI libraries, essential monitoring tools, and example scripts to get you started immediately.

Quick Start

To run the toolkit, you need a valid license key provided by Aindo. Use the following command to start the container:

docker run -it \
    --gpus all \
    -e AINDO_LICENSE="your_license_key_here" \
    aindo/aindo-toolkit:latest

Key Parameters:

  • --gpus all: Enables GPU acceleration.
  • -e AINDO_LICENSE: Sets your license key.
  • -it: Runs the container in interactive mode with a TTY.

Features

The toolkit is built on Python 3.12 and includes:

  • Pre-installed Libraries: Includes aindo.rdml and PyTorch 2.9.0 (CUDA 12.8 compatible).
  • Ready-to-run Examples: Located in the /examples directory, covering example datasets.
  • System Utilities: Includes htop for resource monitoring, nano/vim for text editing, and networking tools (iproute2, ping).
  • SSH Support: Includes an OpenSSH server and SFTP support for secure file transfers.

Note on Permissions

The container runs as a non-root user (aindo, UID 1000) for enhanced security.

Persistence and File Transfer

Because Docker containers are ephemeral by default, it is recommended to mount a local directory to save your results or upload your own datasets.

Mounting a Volume

docker run -it \
    --gpus all \
    -e AINDO_LICENSE="your_license_key_here" \
    -v /path/to/your/data:/data \
    aindo/aindo-toolkit:latest

File Transfer

To transfer files between the host PC and the toolkit container, use the docker cp command for quick one-off transfers or leverage a mounted volume as a shared folder for continuous synchronization.

Example:

# Assuming aindo-toolkit-container is the name running toolkit container
# and /examples/output/model.pt is the output of a model training
docker cp aindo-toolkit-container:/examples/output/model.pt ./local_results/

Screen and long running sessions

When running the toolkit container on a remote server, the screen utility can be used to manage long-running training sessions without risking a process crash if the network connection drops. It keeps the process alive in the background, allowing the user to disconnect and reattach later without interrupting the workload.

To start a new session, simply run screen. If you want to log the terminal output to a file, use the following command:

# Start a session named "training" and log output to a file
screen -L -Logfile training_log.txt -S training

Basic usage:

  • Detach: press Ctrl + A then D to leave the session running in the background.
  • Reattach: run screen -r training to return to your session.
  • List Sessions: run screen -ls to see all active background tasks.