Working when secrets manually entered in container

This commit is contained in:
2026-01-09 16:53:07 +01:00
parent 74b8b5c583
commit d6acc28f72
4 changed files with 60 additions and 10 deletions

1
.gitignore vendored
View File

@@ -1,2 +1,3 @@
licenses/**
pkgs/exwayz_3d_mapping*
tmp/**

View File

@@ -1,2 +1,35 @@
## Building with docker secrets
TODO: Figure out a safer way to include secrets in the docker file
# Build the docker image
'''bash
docker build -t exwayz_test:v1.0 -f exwayz_test.dockerfile .
'''
## TODO Building with docker secrets
We need to improve our handling of secrets and figure out a safer way to include them in the docker file/image
# To run the docker file:
1. We need to enable the use of the display
2. Share the volume with our current code so we can access it in the container
3. start a shell
'''bash
docker run -it \
--env="DISPLAY=$DISPLAY" \
--env="QT_X11_NO_MITSHM=1" \
--volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \
-v "$(pwd):/app" \
exwayz_test
'''
Then, run the exways slam on a bag to test everything is workign correctly.
'''bash
exwayz_slam --bag data/exwayz_sample_data_slam_01.bag --bag-hesai /hesai/pandar_packets --hesai-model PandarXT-32 --d-write 0.1 -o ./slam_session_tutorial --no-date
'''
Naturally, change the path to the bagfile for the parameter '--bag'
Hopefully, you will see something like this:
![Working Exwayz Demo¨¨](media/Exwayz_slam_demo_working.gif)
# may have to:
source /opt/ros/$ROS_DISTRO/setup.bash

View File

@@ -9,20 +9,35 @@ ARG TARGETARCH=amd64
COPY pkgs/exwayz_3d_mapping-1.2.2-linux-u24.04-amd64.deb /tmp/exwayz_amd64.deb
COPY pkgs/exwayz_3d_mapping-1.2.2-linux-u24.04-aarch64.deb /tmp/exwayz_aarch64.deb
#If debug, install the following:
RUN apt update && apt install -y libgl1-mesa-dev libosmesa6-dev libglew-dev libgles2-mesa-dev libglfw3-dev libstdc++6 mesa-utils
#TODO we're installing unneccessary things like the humanity-icons package, clean this up later.
# RUN --mount=type=secret,id=exwayz_license set -eux; \
# if [ "${TARGETARCH}" = "aarch64" ]; then \
# pkg=/tmp/exwayz_aarch64.deb; \
# else \
# pkg=/tmp/exwayz_amd64.deb; \
# fi; \
# apt-get update; \
# apt-get install -fy "$pkg"; \
# if [ -s /run/secrets/exwayz_license ]; then \
# exwayz_license --query "$(cat /run/secrets/exwayz_license)" || true; \
# fi; \
# rm -f /tmp/exwayz_amd64.deb /tmp/exwayz_aarch64.deb; \
# rm -rf /var/lib/apt/lists/*
RUN --mount=type=secret,id=exwayz_license set -eux; \
if [ "${TARGETARCH}" = "aarch64" ]; then \
pkg=/tmp/exwayz_aarch64.deb; \
else \
pkg=/tmp/exwayz_amd64.deb; \
fi; \
apt-get update; \
apt-get install -fy "$pkg"; \
apt-get install -fy /tmp/exwayz_amd64.deb; \
if [ -s /run/secrets/exwayz_license ]; then \
exwayz_license --query "$(cat /run/secrets/exwayz_license)" || true; \
else \
echo "No license file provided"; \
exit 1; \
fi; \
rm -f /tmp/exwayz_amd64.deb /tmp/exwayz_aarch64.deb; \
rm -rf /var/lib/apt/lists/*
# TODO verify license was applied successfully
# Set entrypoint

1
notes.md Normal file
View File

@@ -0,0 +1 @@
## fixing broken s