docker 运行图形化ubuntu
docker pull ubuntu:22.04
docker run --privileged --cap-add SYS_ADMIN \
-e container=docker \
-it --name my_ubuntu \
-p 5091:5091 \
-d --restart=always ubuntu:22.04
安装vnc
apt-get install xfce4 xfce4-goodies -y
apt-get install tigervnc-standalone-server tigervnc-xorg-extension -y
ls ~/.vnc
mkdir ~/.vnc
cat > ~/.vnc/xstartup << EOF
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4
EOF
chmod u+x ~/.vnc/xstartup
ls ~/.vnc
cat > ~/.vnc/config << EOF
geometry=1920x1080
dpi=96
EOF
vncserver -geometry 1920x1080 :1 -localhost no
ss -ntlp
dockerfile
from ubuntu:20.04
RUN sed -i "s@http://.*archive.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources.list &&\
sed -i "s@http://.*security.ubuntu.com@http://mirrors.huaweicloud.com@g" /etc/apt/sources.list
RUN apt update
RUN DEBIAN_FRONTEND=noninteractive apt-get install xfce4 xfce4-goodies tigervnc-standalone-server tigervnc-xorg-extension -y
RUN DEBIAN_FRONTEND=noninteractive apt install fcitx fcitx-frontend-gtk2 fcitx-frontend-gtk3 fcitx-libpinyin fonts-wqy-zenhei -y
RUN mkdir ~/.vnc
RUN echo '\n\
#!/bin/sh \n\
unset SESSION_MANAGER \n\
unset DBUS_SESSION_BUS_ADDRESS \n\
exec startxfce4 \n'\
>> ~/.vnc/xstartup
RUN echo ' \n\
export LANG=zh_CN.UTF-8 \n\
export LANGUAGE=zh_CN:en_US \n\
export LC_CTYPE=zh_CN.UTF-8 \n\
export GTK_IM_MODULE=fcitx \n\
export QT_IM_MODULE=fcitx \n\
export XMODIFIERS="@im=fcitx" \n\'\
>>/etc/.xprofile
RUN chmod +x ~/.vnc/xstartup
RUN apt-get install -y iproute2 vim firefox htop tree xfce4-panel-profiles
ENTRYPOINT vncserver -geometry 1920x1080 :1 -localhost no
docker-compose.yml
version: "3.9"
services:
vnc-ubuntu:
#定义主机名
container_name: vnc-ubuntu
#使用的镜像
image: ubuntu-20.04-vnc:v0.1
#容器的映射端口
ports:
- 5901:5901
#定义挂载点
#docker 重启后,容器自启动
restart: always
entrypoint: sleep inf