Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags. |
Installing TIAGo OMNI Base Tutorial Docker
Description: How to pull and launch a docker all set up for the TIAGo OMNI Base Tutorial with melodic or noeticTutorial Level: BEGINNER
Next Tutorial: Robots/TIAGo-OMNI-base/Tutorials/Installation/OMNI_Base_Simulation
Author: Job van Dieten < job.1994@gmail.com >, Sai Kishor Kothakota < sai.kishor@pal-robotics.com >
Maintainer: Jordi Pages < jordi.pages@pal-robotics.com >, Thomas Peyrucain < thomas.peyrucain@pal-robotics.com >
Support: tiago-support@pal-robotics.com
Source: https://github.com/pal-robotics/omni_base_tutorials.git
Docker-based installation
Those Dockerfiles are meant to be used to explore the functionalities of PAL Robotics mobile bases, it is not meant for development on the real robots since more functionalities are available in the dockers provided to customers when purchasing a robot.
These instructions assume that you have a basic docker understanding and have already installed it. Please familiarize yourself using the docker tutorials.
First of all open a terminal and pull the image of Melodic out of pal_mobile_base_tutorials:
docker pull palroboticssl/pal_mobile_base_tutorials:melodic
or Noetic:
docker pull palroboticssl/pal_mobile_base_tutorials:noetic
Rocker is mandatory for the following tutorials to have a graphical user interface with docker. osrf/rocker,it is a tool to run docker images with customized local support injected for things like nvidia support, and user_id specific files for cleaner mounting file permissions. You could also find more useful information on this topic on Tooling with Docker.
- rocker with nvidia support:.
You would need first to install nvidia docker support : https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker :
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt-get update sudo apt-get install -y nvidia-docker2 sudo systemctl restart docker
And then run the rockerrocker --home --user --nvidia --x11 --privileged palroboticssl/pal_mobile_base_tutorials:<ros_distro>
- rocker with intel integrated graphics support:
rocker --home --user --x11 --privileged palroboticssl/pal_mobile_base_tutorials:<ros_distro> --devices /dev/dri/card0
The options --home and --user are used so that the user won't be root and home directory will be mounted
If you are using a version of rocker that is lower than version 0.2.4, you would need to remove the --privileged option
Once you are inside the rocker you can do
terminator -u
To open a terminal inside the rocker that will allow you to use several terminals on the same rocker (Do not forget to source them all)
cd /pal_mobile_base_ws/ source devel/setup.bash
To check that everything is properly installed run the TIAGo OMNI Base simulation