Select Git revision
-
Prada Sarasola, Miguel authoredPrada Sarasola, Miguel authored
DevenvMelodic.Dockerfile 6.07 KiB
FROM osrf/ros:melodic-desktop-full
ENV ROS_DISTRO melodic
# Avoid warnings by switching to noninteractive
ENV DEBIAN_FRONTEND=noninteractive
# Setup environment
RUN apt-get update && apt-get install -y \
locales \
&& sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
# Configure apt and install packages
RUN apt-get -y install --no-install-recommends \
apt-transport-https \
ca-certificates \
software-properties-common \
curl \
gnupg-agent \
apt-utils dialog 2>&1 \
git \
git-lfs \
nano \
less \
iproute2 \
procps \
lsb-release \
curl \
cmake \
openssh-client \
python-pip \
python-catkin-tools \
python-osrf-pycommon \
libclang-dev \
cppcheck \
lcov \
iwyu \
xterm \
zsh \
&& rm -rf /var/lib/apt/lists/*
# Install docker-ce
#RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
#RUN add-apt-repository \
# "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
#RUN apt-get update && apt-get -y install --no-install-recommends \
# docker-ce-cli \
# && rm -rf /var/lib/apt/lists/*
# Configure system to look for debian packages in the Artifactory repository
ARG USER_API_KEY_ARTIFACTS_TECNALIA
RUN sh -c "echo \
'deb https://${USER_API_KEY_ARTIFACTS_TECNALIA}@artifact.tecnalia.com/artifactory/tecnalia-robotics-debian xenial main' \
>> /etc/apt/sources.list.d/tecnalia.list"
# Import the key in order to be able to use the packages from the repository
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 7E72C5B4111A50084C63C9489E7A9B1D990CF897
# Configure rosdep
RUN sh -c "echo 'yaml https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/rosdistro/rosdep_tecnalia.yaml' \
>> /etc/ros/rosdep/sources.list.d/20-default.list"
RUN apt-get update && apt-get install -y \
ros-melodic-ros-control-boilerplate \
ros-melodic-ur-msgs \
ros-melodic-eigen-stl-containers \
ros-melodic-industrial-robot-simulator \
ros-melodic-srdfdom \
ros-melodic-joint-state-publisher-gui \
ros-${ROS_DISTRO}-rosmon \
python-pyside \
python-lxml \
python-qt4 \
python-qt4-dev \
libshiboken-dev \
shiboken \
libpyside-dev \
libcomedi-dev \
libmodbus-dev \
libcanberra-gtk-module \
libcanberra-gtk0 \
cmake
RUN apt-get install -y \
ros-melodic-rosbridge-server \
ros-melodic-moveit \
ros-melodic-hector-mapping \
ros-melodic-hector-gazebo-plugins \
ros-melodic-amcl \
ros-melodic-gmapping \
ros-melodic-twist-mux \
ros-melodic-map-server \
ros-melodic-joy \
ros-melodic-teb-local-planner \
ros-melodic-move-base \
ros-melodic-velocity-controllers \
ros-melodic-ackermann-msgs \
ros-melodic-robot-localization \
ros-melodic-imu-complementary-filter \
ros-melodic-mavros-msgs \
ros-melodic-joint-trajectory-controller \
ros-melodic-executive-smach-visualization \
ros-melodic-catkin-virtualenv \
ros-melodic-rviz-visual-tools \
python-sqlalchemy \
python-zmq \
ros-melodic-trac-ik-kinematics-plugin \
python3-catkin-pkg-modules
RUN apt-get install -y \
ros-melodic-ar-track-alvar-msgs \
ros-melodic-navigation
RUN apt-get install -y \
ros-melodic-ar-track-alvar \
ros-melodic-usb-cam \
libceres-dev \
libglfw3-dev \
sqlite3
RUN apt-get install -y \
ros-melodic-realsense2-camera \
ros-melodic-eigen-conversions \
ros-melodic-abb-driver \
libqd-dev \
ros-melodic-swri-profiler \
ros-melodic-force-torque-sensor-controller \
ros-melodic-effort-controllers
RUN apt-get install -y \
libdouble-conversion-dev
RUN apt-get update \
&& apt-get upgrade ca-certificates -y
RUN curl -fsSLk https://deb.nodesource.com/setup_14.x | bash - \
&& apt-get install -y -qq nodejs \
&& npm install -g yarn
RUN apt-get install -y \
gir1.2-gtk-3.0 \
python3-gi \
python3-gi-cairo \
python3-numpy \
python3-pip \
python-pip \
graphviz \
xdot \
ros-melodic-image-view \
libcanberra-gtk-module \
libcanberra-gtk3-module \
wget \
terminator \
direnv \
libspnav-dev \
libbluetooth-dev \
libcwiid-dev \
ros-melodic-joy
RUN apt-get update && apt-get install -y \
#spacenavd \
#ros-melodic-spacenav-node \
ros-melodic-ros-control \
ros-melodic-rqt-controller-manager \
systemd
#RUN wget https://www.zivid.com/hubfs/softwarefiles/releases/1.8.3+96f35dc6-1/u18/zivid-telicam-driver_3.0.1.1-1_amd64.deb \
# https://www.zivid.com/hubfs/softwarefiles/releases/1.8.3+96f35dc6-1/u18/zivid_1.8.3+96f35dc6-1_amd64.deb \
# https://www.zivid.com/hubfs/softwarefiles/releases/1.8.3+96f35dc6-1/u18/zivid-studio_1.8.3+96f35dc6-1_amd64.deb \
# https://www.zivid.com/hubfs/softwarefiles/releases/1.8.3+96f35dc6-1/u18/zivid-tools_1.8.3+96f35dc6-1_amd64.deb
#RUN dpkg -i zivid*.deb
#RUN mv /usr/include/flann/ext/lz4.h /usr/include/flann/ext/lz4.h.bak
#RUN mv /usr/include/flann/ext/lz4hc.h /usr/include/flann/ext/lz4.h.bak
#RUN ln -s /usr/include/lz4.h /usr/include/flann/ext/lz4.h
#RUN ln -s /usr/include/lz4hc.h /usr/include/flann/ext/lz4hc.h
RUN apt-get update && apt-get install -y \
ros-melodic-moveit-resources \
ros-melodic-moveit-visual-tools \
ros-melodic-moveit-opw-kinematics-plugin \
ros-melodic-rqt-joint-trajectory-controller \
ros-melodic-ros-controllers \
python-mock \
python-funcsigs \
clang-format
RUN apt-get update && apt-get install -y \
ros-melodic-imu-tools \
ros-melodic-interactive-marker-twist-server \
ros-melodic-industrial-core \
ros-melodic-lms1xx \
ros-melodic-serial
# Update final image
RUN apt-get update && apt-get -y upgrade && apt-get -y autoremove
RUN apt-get clean
# Set entrypoint
COPY ./ros_entrypoint.sh /
RUN chmod a+x /ros_entrypoint.sh
ENTRYPOINT ["/ros_entrypoint.sh"]
CMD ["zsh"]
ENV SHELL /usr/bin/zsh
# Switch back to dialog for any ad-hoc use of apt-get
ENV DEBIAN_FRONTEND=