Working when secrets manually entered in container
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,2 +1,3 @@
|
|||||||
licenses/**
|
licenses/**
|
||||||
pkgs/exwayz_3d_mapping*
|
pkgs/exwayz_3d_mapping*
|
||||||
|
tmp/**
|
||||||
37
README.md
37
README.md
@@ -1,2 +1,35 @@
|
|||||||
## Building with docker secrets
|
# Build the docker image
|
||||||
TODO: Figure out a safer way to include secrets in the docker file
|
'''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:
|
||||||
|

|
||||||
|
|
||||||
|
# may have to:
|
||||||
|
source /opt/ros/$ROS_DISTRO/setup.bash
|
||||||
@@ -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-amd64.deb /tmp/exwayz_amd64.deb
|
||||||
COPY pkgs/exwayz_3d_mapping-1.2.2-linux-u24.04-aarch64.deb /tmp/exwayz_aarch64.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; \
|
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 update; \
|
||||||
apt-get install -fy "$pkg"; \
|
apt-get install -fy /tmp/exwayz_amd64.deb; \
|
||||||
if [ -s /run/secrets/exwayz_license ]; then \
|
if [ -s /run/secrets/exwayz_license ]; then \
|
||||||
exwayz_license --query "$(cat /run/secrets/exwayz_license)" || true; \
|
exwayz_license --query "$(cat /run/secrets/exwayz_license)" || true; \
|
||||||
|
else \
|
||||||
|
echo "No license file provided"; \
|
||||||
|
exit 1; \
|
||||||
fi; \
|
fi; \
|
||||||
rm -f /tmp/exwayz_amd64.deb /tmp/exwayz_aarch64.deb; \
|
rm -f /tmp/exwayz_amd64.deb /tmp/exwayz_aarch64.deb; \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# TODO verify license was applied successfully
|
# TODO verify license was applied successfully
|
||||||
|
|
||||||
# Set entrypoint
|
# Set entrypoint
|
||||||
|
|||||||
Reference in New Issue
Block a user