Project setup - Linux distros
Installation steps for Linux distros.
Tested on Ubuntu and Fedora distros
Install Docker Engine
Install the Docker Engine.
The procedures for Ubuntu and Fedora are shown below (copied from the Docker documentation page).
Set up Docker's apt
repository
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Install the Docker packages.
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Install the dnf-plugins-core
package (which provides the commands to manage your DNF repositories) and set up the repository.
sudo dnf -y install dnf-plugins-core
sudo dnf-3 config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
Install the Docker packages.
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Info
If prompted to accept the GPG key, verify that the fingerprint matches 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
, and if so, accept it.
This fingerprint might update! Check it out here.
Linux postinstall instructions
Docker provides some instructions regarding the docker user group.
Create the docker group:
sudo groupadd docker
Add your user to the docker group:
sudo usermod -aG docker $USER
Log out and log back in so that your group membership is re-evaluated.
You can also run the following command to activate the changes to groups:
newgrp docker
Check if you can use docker images
for example, without sudo
in a new terminal. If not, restart you computer or try again with newgrp docker
.
Add user to dialout group
To be able to register data from USB devices, the user needs to be added to the dialout group:
sudo usermod -aG dialout $USER
Log out and log back in so that your group membership is re-evaluated.
Setup the software
Pull the project docker image
Open a terminal and pull the project docker image:
docker pull aaronrpb/force-platform-app
Run a new docker container
Connect your sensors, check if the /dev/bus/usb
(and /dev/ttyUSB*
in case you have Taobotics IMUs) paths exists and create a new container where the software will be running, with:
docker run -d --name example_app \
--device /dev/bus/usb \
--device /dev/ttyUSB0 \
--device /dev/ttyUSB1 \
-p 8501:8501 \
aaronrpb/force-platform-app
Note
- You can change the name example_app to any name you prefer.
- If you have no sensors of USB devices connected, the
/dev/bus/usb
and/or/dev/ttyUSB*
could be empty, and the docker daemon will throw ano such file or directory
error. - You can ignore some
--device
flags if you are not using Taobotics IMUs (/dev/ttyUSB*
).
Check if the container is running, going to http://localhost:8501/ and try to connect your sensors.
You will need to upload a custom configuration file with proper usb paths.
To stop or escape the software, use:
docker stop example_app
Software usage instructions
Follow these steps to ensure proper sensor connectivity and optimal software functionality.
For more information about the software app features, check out the documentation within the software, at the homepage.
Start
- Connect sensors to PC.
- Start the docker container using the
docker start <container_name>
command in a terminal. - Open the software app url (http://localhost:8501/) or other configured port/url.
- Connect your sensors to the app.
- Record data, check graphs and download it in
CSV
files.
Stop
- Make sure you are not recording data from connected sensors.
- Stop the docker container using the
docker stop <container_name>
command in a terminal. - Disconnect the sensors.
Update
You can check new updates from the DockerHub page or the GitHub repository.
If you where using a custom configuration file, you will need to upload it again.
Download your custom configuration file before removing the docker container.
The new updated container will always run with default settings and has no custom configuration file in it.
If you want to update the software to newer versions, follow these steps:
- Pull the latest docker image:
docker pull aaronrpb/force-platform-app
- Remove the previous docker container:
docker container rm <container_name>
- Create a new container using the
docker run
command again:
docker run -d --name example_app \
--device /dev/bus/usb \
--device /dev/ttyUSB0 \
--device /dev/ttyUSB1 \
-p 8501:8501 \
aaronrpb/force-platform-app