Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions docker/Dockerfile_ros-noetic-offboard
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
#
# PX4 ROS development environment
#

FROM px4io/px4-dev-simulation-focal:2021-09-08
LABEL maintainer="Nuno Marques <n.marques21@hotmail.com>"

ENV ROS_DISTRO noetic

# setup ros keys
RUN curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | apt-key add -

RUN sh -c 'echo "deb http://packages.ros.org/ros/ubuntu `lsb_release -sc` main" > /etc/apt/sources.list.d/ros-latest.list' \
&& sh -c 'echo "deb http://packages.ros.org/ros/ubuntu `lsb_release -sc` main" > /etc/apt/sources.list.d/ros-latest.list' \
&& sh -c 'echo "deb http://packages.ros.org/ros-shadow-fixed/ubuntu `lsb_release -sc` main" > /etc/apt/sources.list.d/ros-shadow.list' \
&& apt-get update \
&& apt-get -y --quiet --no-install-recommends install \
geographiclib-tools \
libeigen3-dev \
libgeographic-dev \
libopencv-dev \
libyaml-cpp-dev \
python3-rosdep \
python3-catkin-tools \
python3-catkin-lint \
ros-$ROS_DISTRO-gazebo-ros-pkgs \
ros-$ROS_DISTRO-mavlink \
ros-$ROS_DISTRO-mavros \
ros-$ROS_DISTRO-mavros-extras \
ros-$ROS_DISTRO-octomap \
ros-$ROS_DISTRO-octomap-msgs \
ros-$ROS_DISTRO-pcl-conversions \
ros-$ROS_DISTRO-pcl-msgs \
ros-$ROS_DISTRO-pcl-ros \
ros-$ROS_DISTRO-ros-base \
ros-$ROS_DISTRO-rostest \
ros-$ROS_DISTRO-rosunit \
python3-catkin-tools \
python3-rosinstall-generator\
python3-wstool \
xvfb \
vim \
&& geographiclib-get-geoids egm96-5 \
&& apt-get -y autoremove \
&& apt-get clean autoclean \
&& rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log} /tmp/* /var/tmp/*

RUN pip3 install -U \
osrf-pycommon
RUN wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh && sudo bash ./install_geographiclib_datasets.sh

# bootstrap rosdep
RUN rosdep init && rosdep update

RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> \
/etc/sudoers
RUN echo 'source ~/Firmware/Tools/simulation/gazebo/setup_gazebo.bash ~/Firmware ~/Firmware/build/px4_sitl_default' >> /home/user/.bashrc
RUN echo 'export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/Firmware' >> /home/user/.bashrc
RUN echo 'export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/Firmware/Tools/simulation/gazebo/sitl_gazebo' >> /home/user/.bashrc
RUN echo 'export GAZEBO_PLUGIN_PATH=$GAZEBO_PLUGIN_PATH:/usr/lib/x86_64-linux-gnu/gazebo-9/plugins' >> /home/user/.bashrc

RUN ln -s /usr/bin/python3 /usr/bin/python

RUN adduser user sudo

USER root
3 changes: 3 additions & 0 deletions docker/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ px4-dev-ros-melodic: px4-dev-simulation-bionic
px4-dev-ros-noetic: px4-dev-simulation-focal
docker build -t px4io/px4-dev-ros-noetic . -f Dockerfile_ros-noetic

px4-dev-ros-noetic-offboard: px4-dev-simulation-focal
docker build -t px4io/px4-dev-ros-noetic-offboard . -f Dockerfile_ros-noetic-offboard

px4-dev-ros2-dashing: px4-dev-ros-melodic
docker build -t px4io/px4-dev-ros2-dashing . -f Dockerfile_ros2-dashing

Expand Down