**Click on the content table for direct access to the different sections
CONTENTS
Intro
Docker enables developers to easily pack, ship, and run any application as a lightweight, portable, self-sufficient container, which can run virtually anywhere. This can be especially helpful for D400e users that need to deploy the cameras in larger numbers with the same configuration. Rolling out the entire software stack in a container simplifies deployment, maintenance and monitoring of the applications.
From FRAMOS software package version 2.4 onwards, the insertion of the user space driver enables the setup of D400e cameras inside container, without the need to manually install a driver on the host beforehand. Following guide presents an easy-to-follow example of how to achieve this.
Please note that the steps presented are not mandatory but provide a simple guide based on a working example.
Prerequisites
Make sure to implement this steps to ensure the functionality of the example.
Host Network settings
Make sure to configure your hosts network settings to match the camera setup used.
Some recommendations:
- If the camera is connected directly to the host using a dedicated NIC, the recommended setting is to use LLA in the network settings
- If the camera is connected via switch and there is a DHCP server providing IP addresses, the recommended setting is to use DHCP in the network setting
Note: No matter which type of IP address assignment is being used camera and host must be in the same subnet to be able to communicate with each other.
For more details, please check following articles:
Docker installation
Installation process:
First, install the docker engine and composer following the guidelines from the Docker website:
- For Docker engine: https://docs.docker.com/install/linux/docker-ce/ubuntu/
- For Docker Compose: https://docs.docker.com/compose/install/
Post-docker installation – “Run docker without sudo”:
To ensure that the docker will recognize the camera later, please add the user to the docker group as per instructions given in the following article:
https://docs.docker.com/engine/install/linux-postinstall/
Checking installation:
If the installation was successful, the output after running the below command in the terminal without <sudo> will be as shown in the illustration.
docker run hello-world
Getting started with Docker and D400e
1. Setup a new directory for the project:
mkdir ~/docker_test
2. Navigate to the directory created and create the Dockerfile and compose files. Use as reference the examples files attached to this article to review the settings in Dockerfile and compose file:
cd ~/docker_test
3. Build the docker image using:
docker-compose build
After finishing the build the below message will prompt
4. Run the following docker compose command to start the docker
docker-compose run docker_example
5. Run the hello word example inside docker container
rs-hello-realsense
Troubleshooting
“No device connected”
Root cause: Camera is not reachable, most likely due to false IP configuration
Resolution: Inside docker review the network settings by using <ifconfig> command in terminal
Then check, using the ConfigureIP tool from the FRAMOS camerasuite, the settings of the camera and if the camera is accessible or not.
cd /usr/src/framos/camerasuite/Tools/ ./ConfigureIP
If the camera is not accessible, follow the instructions inside the ConfigureIP tool to match the cameras IP address. After the IP addresses are matched, the camera should become accessible, see picture below:
RealSense error calling
Root cause: An older version of Software release is being used.
Resolution: Please make sure to use the FRAMOS Software Package version 2.4 that includes the user space driver.
Failed to build
If the following error appears, please remove the extension “.txt” from the Dockerfile . The file is saved as text format to be able to be uploaded in this website.