forked from Arena-Rosnav/arena-rosnav
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
86 lines (73 loc) · 2.14 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# Main Dockerfile
FROM osrf/ros:noetic-desktop-full
SHELL ["/bin/bash", "-c"]
RUN apt-get -y update \
&& apt-get install -y \
apt-utils \
software-properties-common \
git \
wget \
ros-noetic-tf2 \
ros-noetic-tf \
ros-noetic-tf2-geometry-msgs \
ffmpeg \
python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential \
libsm6 \
libxext6 \
&& add-apt-repository ppa:deadsnakes/ppa \
&& apt-get -y update \
&& apt-get -y install \
libopencv-dev \
liblua5.2-dev \
screen \
python3 \
python3-dev \
libpython3-dev \
python3-catkin-pkg-modules \
python3-rospkg-modules \
python3-empy \
python3-setuptools \
ros-noetic-navigation \
ros-noetic-teb-local-planner \
ros-noetic-mpc-local-planner \
libarmadillo-dev \
ros-noetic-nlopt \
python3 \
python3-pip \
tk \
ros-noetic-turtlebot3-description \
ros-noetic-turtlebot3-navigation \
python-tk \
python3-tk \
tk-dev \
ros-noetic-lms1xx \
ros-noetic-velodyne-description \
ros-noetic-hector-gazebo \
ros-noetic-ira-laser-tools
# Install Poetry
RUN pip3 install poetry \
&& pip3 install --upgrade pip
# Install PyEnv
WORKDIR /root/
RUN git clone --depth=1 https://github.com/pyenv/pyenv.git .pyenv
ENV PYENV_ROOT="/root/.pyenv"
ENV PATH="${PYENV_ROOT}/shims:${PYENV_ROOT}/bin:${PATH}"
RUN echo 'eval "$(pyenv init -)"' >> /root/.bashrc
RUN sed -Ei -e '/^([^#]|$)/ {a export PYENV_ROOT="$HOME/.pyenv" \nexport PATH="$PYENV_ROOT/bin:$PATH"' -e ':a' -e '$!{n;ba};}' /root/.profile
RUN echo 'eval "$(pyenv init --path)"' >> /root/.profile
RUN mkdir -p /root/src/
WORKDIR /root/src/
COPY . /root/src/arena-rosnav
RUN echo -e "source /opt/ros/noetic/setup.sh" >> /root/.bashrc
RUN echo -e "source /root/devel/setup.sh" >> /root/.bashrc
RUN pip install scipy PyQt5 empy defusedxml
RUN pip install wandb
WORKDIR /root/src/arena-rosnav
RUN rosws update
WORKDIR /root/
RUN source /root/.bashrc \
&& source /opt/ros/noetic/setup.sh \
&& catkin_make
# WORKDIR /root/src/utils/stable-baselines3
# RUN pip install -e .
WORKDIR /root/