diff --git a/docker_auton/Dockerfile b/docker_auton/Dockerfile index 2d9d312..e919f04 100755 --- a/docker_auton/Dockerfile +++ b/docker_auton/Dockerfile @@ -6,42 +6,37 @@ #FROM arm64v8/ros:noetic-ros-base-focal -FROM ubuntu:focal@sha256:420b6f4cc783dc199667eae3316d9e066bd6e19931448c1e4b6f9a3759e52106 +FROM --platform=linux/aarch64 ubuntu:focal ENV DEBIAN_FRONTEND noninteractive -RUN apt update -RUN apt-get install -y -qq \ - python3-pip \ - python3-tk \ - vim git tmux tree sl htop x11-apps curl - -RUN apt-get update && apt-get install -y lsb-release && apt-get clean all +RUN apt-get update && apt-get install -y \ + vim git tmux tree sl htop x11-apps curl lsb-release apt-utils && \ + apt-get install -y python3-pip python3-tk && \ + apt-get clean all -y + +RUN echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list && \ + curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | apt-key add - && \ + apt-get update && \ + apt-get install -y \ + ros-noetic-desktop-full\ + ros-noetic-rosserial \ + ros-noetic-foxglove-bridge \ + ros-noetic-microstrain-inertial-driver \ + ros-noetic-realsense2-camera \ + ros-noetic-realsense2-description \ + ros-noetic-mavros ros-noetic-mavros-extras ros-noetic-mavros-msgs + # RUN curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc -# RUN apt-key add - - -# https://wiki.ros.org/noetic/Installation/Ubuntu - -# RUN apt-get install -y -qq \ -# ros-noetic-desktop-full \ - ros-noetic-rosserial \ - ros-noetic-foxglove-bridge \ - ros-noetic-microstrain-inertial-driver \ - ros-noetic-realsense2-camera \ - ros-noetic-realsense2-description \ - ros-noetic-mavros ros-noetic-mavros-extras ros-noetic-mavros-msgs - -# Run this now to cache it separately from other requirements -# COPY cuda-requirements_TEMP_DO_NOT_EDIT.txt cuda-requirements.txt -# RUN pip3 install -r cuda-requirements.txt +# RUN apt-key add - -# COPY ./python-requirements_TEMP_DO_NOT_EDIT.txt python-requirements.txt -# RUN pip3 install -r python-requirements.txt # RUN echo 'source "/opt/ros/$ROS_DISTRO/setup.bash" --' >> ~/.bashrc -RUN echo 'cd rb_ws' >> ~/.bashrc -RUN echo 'catkin_make >/dev/null' >> ~/.bashrc -RUN echo 'source devel/setup.bash' >> ~/.bashrc +RUN echo 'source "/opt/ros/noetic/setup.bash" --' >> ~/.bashrc && \ + echo 'cd rb_ws' >> ~/.bashrc && \ + echo 'pip3 install -r python-requirements.txt' >> ~/.bashrc && \ + echo 'catkin_make >/dev/null' >> ~/.bashrc && \ + echo 'source devel/setup.bash' >> ~/.bashrc # shoestring fix since installing numba from pythonrequirements # smh breaks diff --git a/docker_auton/python-requirements.txt b/docker_auton/python-requirements.txt new file mode 100644 index 0000000..11f3a91 --- /dev/null +++ b/docker_auton/python-requirements.txt @@ -0,0 +1,13 @@ +matplotlib==3.1.2 +NavPy==1.0 +numba==0.58.0 +osqp==0.6.3 +pandas==2.0.3 +pymap3d==3.0.1 +scipy==1.10.1 +trimesh==3.23.5 +utm==0.7.0 +keyboard==0.13.5 +tk==0.1.0 +pyembree +numpy \ No newline at end of file diff --git a/rb_ws/python-requirements.txt b/rb_ws/python-requirements.txt index 9e12c3f..47872c3 100644 --- a/rb_ws/python-requirements.txt +++ b/rb_ws/python-requirements.txt @@ -1,7 +1,6 @@ matplotlib==3.1.2 NavPy==1.0 numba==0.58.0 -numpy<1.21.0 osqp==0.6.3 pandas==2.0.3 pymap3d==3.0.1 @@ -11,3 +10,4 @@ utm==0.7.0 keyboard==0.13.5 tk==0.1.0 pyembree +numpy diff --git a/setup_prod.sh b/setup_prod.sh index 82c97e2..d4fafa7 100755 --- a/setup_prod.sh +++ b/setup_prod.sh @@ -79,12 +79,12 @@ docker kill $(docker ps -q) # copy python-requirements + cuda-requirements into appropriate folders for docker compose -cp python-requirements.txt docker_auton -mv docker_auton/python-requirements.txt docker_auton/python-requirements_TEMP_DO_NOT_EDIT.txt -cp python-requirements.txt docker_tester -mv docker_tester/python-requirements.txt docker_tester/python-requirements_TEMP_DO_NOT_EDIT.txt -cp cuda-requirements.txt docker_auton -mv docker_auton/cuda-requirements.txt docker_auton/cuda-requirements_TEMP_DO_NOT_EDIT.txt +# cp python-requirements.txt docker_auton +# mv docker_auton/python-requirements.txt docker_auton/python-requirements_TEMP_DO_NOT_EDIT.txt +# cp python-requirements.txt docker_tester +# mv docker_tester/python-requirements.txt docker_tester/python-requirements_TEMP_DO_NOT_EDIT.txt +# cp cuda-requirements.txt docker_auton +# mv docker_auton/cuda-requirements.txt docker_auton/cuda-requirements_TEMP_DO_NOT_EDIT.txt echo "Building containers..." docker-compose -f $dockerfile build