|
|
|
|
|
FROM ubuntu:18.04 |
|
|
|
|
|
MAINTAINER gotoeasy <gotoeasy@163.com> |
|
|
|
|
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive \ |
|
|
SIZE=1024x768 \ |
|
|
PASSWD=123456 \ |
|
|
TZ=Asia/Shanghai \ |
|
|
LANG=zh_CN.UTF-8 \ |
|
|
LC_ALL=${LANG} \ |
|
|
LANGUAGE=${LANG} |
|
|
|
|
|
USER root |
|
|
WORKDIR /root |
|
|
|
|
|
|
|
|
RUN echo "root:$PASSWD" | chpasswd |
|
|
|
|
|
|
|
|
RUN apt-get -y update && \ |
|
|
|
|
|
apt-get install -y vim git subversion wget curl net-tools locales bzip2 unzip iputils-ping traceroute firefox firefox-locale-zh-hans ttf-wqy-microhei gedit ibus-pinyin && \ |
|
|
locale-gen zh_CN.UTF-8 && \ |
|
|
|
|
|
apt-get install -y openssh-server && \ |
|
|
mkdir -p /var/run/sshd && \ |
|
|
sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config && \ |
|
|
sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config && \ |
|
|
mkdir -p /root/.ssh && \ |
|
|
|
|
|
wget -qO- https://nchc.dl.sourceforge.net/project/tigervnc/stable/1.13.1/tigervnc-1.13.1.x86_64.tar.gz | tar xz --strip 1 -C / && \ |
|
|
mkdir -p /root/.vnc && \ |
|
|
echo $PASSWD | vncpasswd -f > /root/.vnc/passwd && \ |
|
|
chmod 600 /root/.vnc/passwd && \ |
|
|
|
|
|
apt-get install -y xfce4 xfce4-terminal && \ |
|
|
apt-get purge -y pm-utils xscreensaver* && \ |
|
|
|
|
|
apt-get install -y xrdp && \ |
|
|
echo "xfce4-session" > ~/.xsession && \ |
|
|
|
|
|
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ |
|
|
apt-get install -y -f ./google-chrome-stable_current_amd64.deb && \ |
|
|
sed -e '/chrome/ s/^#*/#/' -i /opt/google/chrome/google-chrome && \ |
|
|
echo 'exec -a "$0" "$HERE/chrome" "$@" --user-data-dir="$HOME/.config/chrome" --no-sandbox --disable-dev-shm-usage' >> /opt/google/chrome/google-chrome && \ |
|
|
rm -f google-chrome-stable_current_amd64.deb && \ |
|
|
|
|
|
apt-get install -y mysql-workbench && \ |
|
|
|
|
|
apt-get -y clean && \ |
|
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* |
|
|
|
|
|
|
|
|
ADD ./xfce/ /root/ |
|
|
|
|
|
|
|
|
RUN echo "#!/bin/bash\n" > /root/startup.sh && \ |
|
|
|
|
|
echo 'if [ $PASSWD ] ; then' >> /root/startup.sh && \ |
|
|
echo ' echo "root:$PASSWD" | chpasswd' >> /root/startup.sh && \ |
|
|
echo ' echo $PASSWD | vncpasswd -f > /root/.vnc/passwd' >> /root/startup.sh && \ |
|
|
echo 'fi' >> /root/startup.sh && \ |
|
|
|
|
|
echo "/usr/sbin/sshd -D & source /root/.bashrc" >> /root/startup.sh && \ |
|
|
|
|
|
|
|
|
|
|
|
echo '/usr/libexec/vncserver :0' >> /root/startup.sh && \ |
|
|
echo "rm -rfv /tmp/.X*-lock /tmp/.X11-unix" >> /root/startup.sh && \ |
|
|
echo 'vncserver :0 -geometry $SIZE' >> /root/startup.sh && \ |
|
|
echo 'tail -f /root/.vnc/*:0.log' >> /root/startup.sh && \ |
|
|
|
|
|
chmod +x /root/startup.sh |
|
|
|
|
|
|
|
|
RUN LANG=C xdg-user-dirs-update --force |
|
|
|
|
|
|
|
|
|
|
|
EXPOSE 22 5900 3389 6001 6002 6003 6004 6005 6006 6007 6008 6009 |
|
|
|
|
|
|
|
|
CMD ["/root/startup.sh"] |
|
|
|
|
|
|