基于`selenium``/standalone-chrome```镜像启动的容器环境,没有linux桌面,如果使用vnc连上去之后,如果在可视化界面上做一些操作的话,是不支持的。
有一个解决方案就是使用linux桌面镜像+自行安装chrome环境的方式,既可以使用selenium控制chrome浏览器,也可以在linux桌面上进行一些可视化操作,比如创建文件夹,运行可执行快捷方式等。
这里使用的镜像是 dorowu/ubuntu-desktop-lxde-vnc,是一个ubuntu桌面镜像,使用的LXDE桌面,版本较老,但是比较轻量,对比其他桌面,如下
|特性|XFCE|LXQt|LXDE
|——
|基础组件|GTK3|Qt5|GTK2
|性能|中等轻量|最轻量|最轻量(但老旧)
|启动速度|快|很快|很快
|兼容性|高,成熟|新但稳定|老旧,已不维护
|外观|稍现代,有主题支持|现代,类似 KDE 风格|过时界面
|内存占用(冷启动)|250–350MB|180–250MB|~150–200MB
|桌面体验|完整、成熟|简洁、现代|极简(不推荐新项目)
|维护状态|活跃(2025 仍在更新)|活跃(Lubuntu 默认桌面)|停止维护(迁移到 LXQt)
|VNC 兼容性|✅ 非常好|✅ 好|⚠️ 偶有显示异常
|推荐用途|通用桌面 / 稳定生产环境|超轻量容器 / 云桌面|老版本兼容场景
dorowu/ubuntu-desktop-lxde-vnc 最新的ubuntu版本是22.04,虽然已经有几年没有更新,但是也不算非常过时
1.拉取镜像
1 | docker pull dorowu/ubuntu-desktop-lxde-vnc:focal |
2.启动容器
1 | docker run -d -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc:focal |
可以使用vnc通过5900端口连上ubuntu桌面
也可以通过浏览器使用6080端口,在web上访问ubuntu桌面
