diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c7ffee5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/protobuf_aarch +/trtdeb \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index d8abe49..98ba4d1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,6 +11,38 @@ ENV __GLX_VENDOR_LIBRARY_NAME=nvidia ENV PATH="/usr/local/cuda/bin:${PATH}" ENV LD_LIBRARY_PATH="/usr/local/cuda/lib64:${LD_LIBRARY_PATH}" ENV LD_LIBRARY_PATH="/usr/local/tensorrt/lib:${LD_LIBRARY_PATH}" +ENV CUDA_TOOLKIT_ROOT="/usr/local/cuda-11.4" + +#TensorRT update +COPY ./trtdeb /home/trtdeb +RUN dpkg -i /home/trtdeb/x86/*.deb +RUN dpkg -i /home/trtdeb/aarch/*.deb +RUN rm -rf /home/trtdeb + +#Protobuf +RUN apt update && apt install libprotobuf-dev -y +COPY ./protobuf_aarch/usr/lib/aarch64-linux-gnu/* /usr/lib/aarch64-linux-gnu/ + +#rootfs fix +RUN rm /drive/drive-linux/filesystem/targetfs/usr/lib/aarch64-linux-gnu/librt.so +RUN ln -s /usr/aarch64-linux-gnu/lib/librt.so /drive/drive-linux/filesystem/targetfs/usr/lib/aarch64-linux-gnu/librt.so + +#ROS2 +RUN apt update && apt install locales -y +RUN locale-gen en_US en_US.UTF-8 +RUN update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 +RUN export LANG=en_US.UTF-8 +RUN apt install software-properties-common -y +RUN add-apt-repository universe +RUN apt update && apt install curl gnupg2 lsb-release -y +RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg +RUN echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null +RUN export DEBIAN_FRONTEND=noninteractive && apt update && apt install ros-foxy-desktop -y +RUN source /opt/ros/foxy/setup.bash +RUN echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc +WORKDIR /opt/ros +RUN ln -sfn foxy ros2 + # set userinfo RUN useradd -rm -c ${user} -u 1000 -d /home/${user} -s /bin/bash -G sudo ${user} @@ -21,5 +53,6 @@ RUN echo "$user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers RUN mkdir -p /home/${user}/workspace/ RUN chown -R ${user}:users /home/${user} COPY .bashrc /home/${user}/.bashrc +RUN echo "source /opt/ros/foxy/setup.bash" >> /home/${user}/.bashrc WORKDIR /home/${user} USER ${user} diff --git a/scripts/start.sh b/scripts/start.sh index a595213..c59a796 100755 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -1 +1 @@ -docker run -it --gpus '"device=0"' -e DISPLAY -v /dev/bus/usb:/dev/bus/usb -v /drive_flashing:/drive_flashing -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/jiayu/1_Projects:/home/jiayu/1_Projects -v /home/jiayu/2_Testing:/home/jiayu/2_Testing -e LINUX_TOP=/drive/drive-linux --net=host --privileged --sysctl fs.mqueue.msg_max=4096 --sysctl fs.mqueue.queues_max=512 --ulimit msgqueue=2097152 git.jiayudev.com:30008/docker/driveos:6.0.4 +docker run -it --gpus '"device=0"' -e DISPLAY -v /dev/bus/usb:/dev/bus/usb -v /drive_flashing:/drive_flashing -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/jiayu/1_Projects:/home/jiayu/1_Projects -v /home/jiayu/2_Testing:/home/jiayu/2_Testing -e LINUX_TOP=/drive/drive-linux --net=host --privileged --sysctl fs.mqueue.msg_max=4096 --sysctl fs.mqueue.queues_max=512 --ulimit msgqueue=2097152 --name=driveos git.jiayudev.com:30008/docker/driveos:latest diff --git a/scripts/start_old.sh b/scripts/start_old.sh new file mode 100755 index 0000000..a595213 --- /dev/null +++ b/scripts/start_old.sh @@ -0,0 +1 @@ +docker run -it --gpus '"device=0"' -e DISPLAY -v /dev/bus/usb:/dev/bus/usb -v /drive_flashing:/drive_flashing -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/jiayu/1_Projects:/home/jiayu/1_Projects -v /home/jiayu/2_Testing:/home/jiayu/2_Testing -e LINUX_TOP=/drive/drive-linux --net=host --privileged --sysctl fs.mqueue.msg_max=4096 --sysctl fs.mqueue.queues_max=512 --ulimit msgqueue=2097152 git.jiayudev.com:30008/docker/driveos:6.0.4