docker 运行图形化ubuntu

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值