AndrePatri / ibrido-docker

Container utilities for rapid deployment of the IBRIDO software echosystem for Learning-based Receding Horizon Control

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Container utilities for IBRIDO rapid deployment

Docker

To set up docker in rootless mode see the how-to-rootless-docker guide or run the isaac_ubuntu22/docker/utils/docker_rootless_installation.sh script.

You can setup you workspace by running isaac_ubuntu22/docker/create_ws.sh. This script will create some directories used by the container + clone all the main packages of the echosystem. Please note that not all packages are currently publicly available (specifically the one hosting the employed RHC controller, which is owned by the HHCM research line at IIT), so this step will fail if you don't have access to it. Basically, you need to be part of the ADVR Humanoids team.

Before being able to run the isaac_ubuntu22/docker/build_docker.sh script (which builds the base image used by LRHControl), you need follow the instructions at Omniverse's Isaac sim image and at isaac-sim container, to get access to IsaacSim's container image.

Running isaac_ubuntu22/docker/build_docker.sh will build the base image, which is basically an image with micromamba, IsaacSim and ros2-humble-base.

After the build process has completed, you can run the isaac_ubuntu22/docker/launch_persistent_container.sh script and then, from the just opened bash shell, the post_build_setup.sh script. This will create the necessary mamba environment (cannot be done at build time due to this issue) and build/install the echosystem packages in the created ibrido micromamba environment. You will additionally be asked to login to wandb (used for remote debugging).

You can now spawn the ibrido_ws Byobu workspace by launching launch_byobu_ws.sh. From the workspace you can rapidly run all the main components of the echosystem. During a "minimal" training, you would just need to run the 3 already configured commands for the simulation environment, the control cluster and, finally, the training environment. Please note that the first time it may take a while due to IsaacSim's ray tracking shaders compilation and the RHC cluster having to codegenerate some symbolic function.

Singularity

Install Singularity > 4.1 and make sure to have installed a squashfs-tools version >=4.6. Also, to be able to pull isaac's docker image, you need to export SINGULARITY_DOCKER_USERNAME="\$oauthtoken" and export SINGULARITY_DOCKER_PASSWORD="${you_nvidia_token}".

Acknowledgements

Thanks to c-rizz for the technical support in setting up the container.

About

Container utilities for rapid deployment of the IBRIDO software echosystem for Learning-based Receding Horizon Control


Languages

Language:Python 77.1%Language:Shell 17.2%Language:Dockerfile 5.7%