forked from willend/jupyter-remote-desktop-proxy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
82 lines (72 loc) · 2.67 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
FROM quay.io/jupyter/base-notebook@sha256:876e3c3e40c4f0a25d3a16223a158a2d582b1ad77ac94269d43a5f6256eb4eec
USER root
RUN apt-get -y -qq update && apt-get -y -qq install software-properties-common && add-apt-repository ppa:mozillateam/ppa \
&& echo 'Package: *' > /etc/apt/preferences.d/mozilla-firefox \
&& echo Pin: release o=LP-PPA-mozillateam >> /etc/apt/preferences.d/mozilla-firefox \
&& echo Pin-Priority: 1001 >> /etc/apt/preferences.d/mozilla-firefox \
&& apt-get install -y dbus-x11 \
# xclip is added as jupyter-remote-desktop-proxy's tests requires it
xclip \
xfce4 \
xfce4-panel \
xfce4-session \
xfce4-settings \
xorg \
xubuntu-icon-theme \
fonts-dejavu \
view3dscene \
python3-pyqt5 \
xdg-utils \
gedit \
gedit-plugins \
evince \
gnuplot \
octave \
git \
firefox \
# Disable the automatic screenlock since the account password is unknown
&& apt-get -y -qq remove xfce4-screensaver \
# chown $HOME to workaround that the xorg installation creates a
# /home/jovyan/.cache directory owned by root
# Create /opt/install to ensure it's writable by pip
&& mkdir -p /opt/install \
&& chown -R $NB_UID:$NB_GID $HOME /opt/install \
&& apt-get -y -qq clean \
&& rm -rf /var/lib/apt/lists/*
# Install a VNC server, either TigerVNC (default) or TurboVNC
ARG vncserver=tigervnc
RUN if [ "${vncserver}" = "tigervnc" ]; then \
echo "Installing TigerVNC"; \
apt-get -y -qq update; \
apt-get -y -qq install \
tigervnc-standalone-server \
tigervnc-xorg-extension \
; \
rm -rf /var/lib/apt/lists/*; \
fi
ENV PATH=/opt/TurboVNC/bin:$PATH
RUN if [ "${vncserver}" = "turbovnc" ]; then \
echo "Installing TurboVNC"; \
# Install instructions from https://turbovnc.org/Downloads/YUM
wget -q -O- https://packagecloud.io/dcommander/turbovnc/gpgkey | \
gpg --dearmor >/etc/apt/trusted.gpg.d/TurboVNC.gpg; \
wget -O /etc/apt/sources.list.d/TurboVNC.list https://raw.githubusercontent.com/TurboVNC/repo/main/TurboVNC.list; \
apt-get -y -qq update; \
apt-get -y -qq install \
turbovnc \
; \
rm -rf /var/lib/apt/lists/*; \
fi \
&& apt-get -y -qq clean \
&& rm -rf /var/lib/apt/lists/*
ADD . /opt/install
RUN cd /opt/install && \
fix-permissions /opt/install
USER $NB_USER
RUN cd /opt/install && \
mamba env update -n base --file environment.yml && \
mamba clean -all -y
COPY --chown=$NB_UID:$NB_GID McStasScript/configuration.yaml /tmp
RUN find /opt/conda/lib/ -type d -name mcstasscript -exec cp /tmp/configuration.yaml \{\} \;
RUN . /opt/conda/bin/activate && \
pip install /opt/install