Getting started!
This guide walks you through setting up the CST Babybot environment inside Docker.
โ Step-by-step Setup
1. Clone the main project repository
git clone https://github.com/H-IAAC/cst-tutorial-babybot
mkdir cst-tutorial && cd cst-tutorial
2. Download and build CST-CLI
git clone https://github.com/CST-Group/CST-CLI
cd CST-CLI
./package.sh
โก๏ธ After building, copy the generated .deb
file to the same directory where your Dockerfile is located.
3. Build the Docker image
docker build -t cst-novnc-app .
4. Run the container interactively
docker run -p 8080:8080 -p 5900:5900 -v ./cst-tutorial/share:/sharevnc -it cst-novnc-app
โก๏ธ Then open your browser and go to http://localhost:8080 โก๏ธ VNC password: 123456
๐งช First Session: Functional Test
Inside the container GUI:
- Open File System > sharevnc
- Open a terminal and run:
./script1.sh
๐ Contents of script1.sh
thunar /MIMo
cd /sharevnc/1_MIMoCoreModelExample
mkdir -p build
apt-get update && apt-get install -y openjdk-11-jdk
git clone https://github.com/CST-Group/cst.git /opt/cst
cd /opt/cst
./gradlew build
cp /opt/cst/build/libs/*.jar /sharevnc/1_MIMoCoreModelExample/lib/
git clone https://github.com/CST-Group/cst-desktop.git /opt/cst-desktop
cd /opt/cst-desktop
./gradlew build
cp /opt/cst-desktop/build/libs/*.jar /sharevnc/1_MIMoCoreModelExample/lib/
cd /sharevnc/1_MIMoCoreModelExample
javac -encoding UTF-8 -cp "lib/*:src" -d build src/ExperimentMain.java
๐ง If you need, make the script executable:
chmod +x script1.sh
๐งช Step 2: Run BabyBench Installation Test
Inside the container (via terminal or noVNC):
conda activate babybench
cd /babybench
python test_installation.py
โ
This will generate the folder results/test_installation/
with a video of the simulation.
๐ค Step 3: Run the Self-Touch Example
conda activate babybench
cd /babybench
python examples/random_selftouch.py
โ
This initializes MIMo in the "crib"
scene and runs a test policy with YAML logging.