-
Notifications
You must be signed in to change notification settings - Fork 4
/
Dockerfile.add_xeus
79 lines (67 loc) · 2.94 KB
/
Dockerfile.add_xeus
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
ARG BUILD_IMAGE=ubuntu:20.04
ARG BASE_IMAGE=ubuntu:20.04
ARG UBUNTU_VER=18.04
FROM ${BUILD_IMAGE} as builder
## do nothing
FROM ${BASE_IMAGE}
ARG UBUNTU_VER
LABEL maintainer "IRSL-tut (https://github.com/IRSL-tut) <[email protected]>"
SHELL ["/bin/bash", "-c"]
# https://qiita.com/haessal/items/0a83fe9fa1ac00ed5ee9
ENV DEBCONF_NOWARNINGS=yes
# https://qiita.com/yagince/items/deba267f789604643bab
ENV DEBIAN_FRONTEND=noninteractive
# https://qiita.com/jacob_327/items/e99ca1cf8167d4c1486d
ENV APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1
### speedup download
# https://genzouw.com/entry/2019/09/04/085135/1718/
RUN sed -i '[email protected]@ftp.jaist.ac.jp/pub/Linux@g' /etc/apt/sources.list
### Why? after 24.0.7
RUN chmod 1777 /tmp
### ROS related install
RUN apt update -q -qq && \
apt install -q -qq -y curl libssl-dev openssl cmake g++ pkg-config git uuid-dev libsodium-dev && \
bash <(curl -s https://raw.githubusercontent.com/choreonoid/choreonoid/master/misc/script/install-requisites-ubuntu-20.04.sh) && \
apt install -q -qq -y ros-${ROS_DISTRO}-xacro \
ros-${ROS_DISTRO}-cv-bridge \
ros-${ROS_DISTRO}-ros-controllers \
ros-${ROS_DISTRO}-robot-state-publisher \
ros-${ROS_DISTRO}-smach-ros \
ros-${ROS_DISTRO}-smach-viewer \
ros-${ROS_DISTRO}-qt-dotgraph \
ros-${ROS_DISTRO}-image-transport \
ros-${ROS_DISTRO}-angles \
ros-${ROS_DISTRO}-controller-manager \
ros-${ROS_DISTRO}-hardware-interface \
ros-${ROS_DISTRO}-joint-limits-interface \
ros-${ROS_DISTRO}-transmission-interface \
ros-${ROS_DISTRO}-move-base \
ros-${ROS_DISTRO}-amcl \
ros-${ROS_DISTRO}-map-server \
ros-${ROS_DISTRO}-teb-local-planner \
ros-${ROS_DISTRO}-dwa-local-planner \
ros-${ROS_DISTRO}-global-planner \
ros-${ROS_DISTRO}-slam-gmapping \
ros-${ROS_DISTRO}-teleop-twist-keyboard \
ros-${ROS_DISTRO}-urdf-tutorial \
ros-${ROS_DISTRO}-urdf python3-pygraphviz && \
apt clean && \
rm -rf /var/lib/apt/lists/
## python related install
RUN apt update -q -qq && \
apt install -q -qq -y python3-pip && \
apt clean && \
rm -rf /var/lib/apt/lists/ && \
python3 -m pip install --upgrade pip && \
python3 -m pip install ipython jedi jupyterlab jupyter-console \
jedi-language-server \
jupyterlab-lsp \
python-lsp-server[all] \
bash_kernel \
jupytext \
networkx && \
python3 -m bash_kernel.install
### cache may be ignored after here
COPY --from=builder /opt/xeus /opt/xeus
ENV PATH=$PATH:/opt/xeus/bin
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/xeus/lib