Public | Automated Build

Last pushed: 7 months ago
Short Description
Docker container for running IHMC Robotics Logger software
Full Description

IHMC Logger Docker

Dockerfile repository for running the IHMC Logger distribution as a Docker container.

Cameras vs. No Cameras

The IHMC Logger software can be synced up with video data. Currently, the docker distribution only supports a no-camera configuration. Adding camera support to the docker container is on the roadmap.

Example Usage

You will need to override one ENV variable to get the logger to work. In a typical situation, the machine hosting the IHMC Logger may have multiple network interfaces. It can only listen for log session requests on a single one of these interfaces. A standard network topology would be to have all robots in a lab on a single subnet, and the logger having a single NIC on that subnet. To make sure the logger listens for connections on the correct interface, it should be told what its own IP address is on the corresponding interface.

Given that background info, a standard command to run the docker image might look like:

$ docker pull ihmcrobotics/ihmc-logger-docker:0.10.0-no_cameras
$ docker run -d --net=host -v `pwd`:/root/robotLogs \
                           -v /etc/localtime:/etc/localtime:ro \
                           -e IHMC_LOGGER_IP=<IP ADDRESS GOES HERE> \

Rebuilding the container

Using the latest release of the Logger software

The container can be rebuilt with a simple docker build -t <your image name here> .. This will download the latest release of the Logger from Our Bintray at build time.

Using locally built versions of the Logger

If you want to clone this repo and build your own container from the Dockerfile and the Logger from source, then it currently requires you to clone and build the Logger distribution included with the IHMCRobotDataLogger project. You will want to use the -LOCAL Dockerfile as well.

Clone the project, navigate to the IHMCRobotDataLogger directory, and then run

gradle loggerDistTar

This will output the tarball to IHMCRobotDataLogger/build/distributions. Move the tarball to the same directory as the Dockerfile then run the build.

docker build -t ihmc-logger-no-cameras-local -f Dockerfile-LOCAL .

You will want to make sure that the LOGGER_VERSION Environment Variable in the Dockerfile is the same as the version number on the tarball generated by the Gradle build. By default, this version number is inherited from the overarching version number assigned to all subprojects of IHMCOpenRoboticsSoftware.

Docker Pull Command
Source Repository