forked from awesomebytes/pepper_virtual
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
36 lines (27 loc) · 1.96 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Base image
FROM osrf/ros:kinetic-desktop-full
MAINTAINER Finn Rietz <[email protected]>
# (RUN is executed when image is build)
RUN apt-get update
RUN apt-get install -y vim wget libprotobuf-dev protobuf-compiler
# packages required for Pepper Gazebo simulation
RUN apt-get install -y ros-kinetic-tf2-sensor-msgs ros-kinetic-ros-control ros-kinetic-ros-controllers ros-kinetic-gazebo-ros ros-kinetic-gazebo-ros-control ros-kinetic-gazebo-plugins ros-kinetic-controller-manager ros-kinetic-ddynamic-reconfigure-python ros-kinetic-gmapping ros-kinetic-map-server ros-kinetic-amcl ros-kinetic-move-base
# install pepper meshes. We have to pipe this into 'yes' to agree to the license. otherwise docker build get's stuck on this step...
# we also have these debian environment params, otherwise the yes still gets stuck on the prompt in the mesh installation
ENV DEBIAN_FRONTEND noninteractive
ENV DEBIAN_FRONTEND teletype
RUN yes | apt-get install ros-kinetic-pepper-meshes
# clone the required repos into a catkin workspace
RUN git clone -b correct_chain_model_and_gazebo_enabled https://github.com/awesomebytes/pepper_robot /catkin_ws/src/pepper_robot
RUN git clone -b simulation_that_works https://github.com/awesomebytes/pepper_virtual /catkin_ws/src/pepper_virtual
RUN git clone https://github.com/awesomebytes/gazebo_model_velocity_plugin /catkin_ws/src/gazebo_model_velociy_plugin
# build the catkin_ws inside the container
RUN /bin/bash -c '. /opt/ros/kinetic/setup.bash && cd /catkin_ws && catkin_make'
# add the saved maps folder from the physical directory to the workspac
ADD ./saved_maps /saved_maps
# add move_base config
ADD ./move_base_configuration /move_base_configuration
# we add these two commands to the bashrc in the container, so that the entrypoint and workspacea will be sourced,
# whenever a new bash session is instantiated in the container
RUN echo 'source /ros_entrypoint.sh' >> /root/.bashrc
RUN echo 'source /catkin_ws/devel/setup.bash' >> /root/.bashrc