superchatai commited on
Commit
991aa60
·
verified ·
1 Parent(s): 6e88ee2

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +86 -0
Dockerfile ADDED
@@ -0,0 +1,86 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM ubuntu:22.04
2
+
3
+ ENV DEBIAN_FRONTEND=noninteractive
4
+ ENV LANG=en_US.UTF-8
5
+ ENV LC_ALL=en_US.UTF-8
6
+
7
+ RUN apt-get update && apt-get install -y \
8
+ locales \
9
+ curl \
10
+ wget \
11
+ git \
12
+ vim \
13
+ htop \
14
+ net-tools \
15
+ iputils-ping \
16
+ dnsutils \
17
+ software-properties-common \
18
+ && locale-gen en_US.UTF-8 \
19
+ && update-locale LANG=en_US.UTF-8
20
+
21
+ RUN apt-get install -y \
22
+ xfce4 \
23
+ xfce4-goodies \
24
+ xfce4-terminal \
25
+ xfce4-panel \
26
+ xfce4-session \
27
+ xfce4-settings \
28
+ xfdesktop4 \
29
+ xfwm4 \
30
+ xfce4-appfinder \
31
+ thunar \
32
+ mousepad \
33
+ xfce4-screenshooter \
34
+ xfce4-taskmanager
35
+
36
+ RUN apt-get install -y \
37
+ novnc \
38
+ websockify \
39
+ python3-numpy \
40
+ python3-websockify
41
+
42
+ RUN apt-get install -y \
43
+ tigervnc-standalone-server \
44
+ tigervnc-common
45
+
46
+ RUN apt-get install -y \
47
+ firefox \
48
+ chromium-browser \
49
+ python3 \
50
+ python3-pip \
51
+ build-essential \
52
+ sudo \
53
+ && apt-get clean \
54
+ && rm -rf /var/lib/apt/lists/*
55
+
56
+ RUN useradd -m -s /bin/bash user && \
57
+ echo 'user:password' | chpasswd && \
58
+ adduser user sudo
59
+
60
+ RUN mkdir -p /home/user/.vnc && \
61
+ echo '#!/bin/sh' > /home/user/.vnc/xstartup && \
62
+ echo 'unset SESSION_MANAGER' >> /home/user/.vnc/xstartup && \
63
+ echo 'unset DBUS_SESSION_BUS_ADDRESS' >> /home/user/.vnc/xstartup && \
64
+ echo 'exec /usr/bin/startxfce4 &' >> /home/user/.vnc/xstartup && \
65
+ chmod +x /home/user/.vnc/xstartup
66
+
67
+ RUN chown -R user:user /home/user
68
+
69
+ EXPOSE 7080
70
+
71
+ RUN echo '#!/bin/bash\n\
72
+ \n\
73
+ echo "password" | vncpasswd -f > /home/user/.vnc/passwd\n\
74
+ chmod 600 /home/user/.vnc/passwd\n\
75
+ \n\
76
+ vncserver :1 -geometry 1280x720 -depth 24\n\
77
+ \n\
78
+ sleep 2\n\
79
+ \n\
80
+ websockify --web=/usr/share/novnc/ 7080 localhost:5901 &\n\
81
+ \n\
82
+ wait' > /startup.sh && chmod +x /startup.sh
83
+
84
+ USER user
85
+ WORKDIR /home/user
86
+ CMD ["/startup.sh"]