特殊情况下, 我们可能会需要在云服务器上快速部署一个VNC环境, Docker环境安装和使用VNC容器.

获取 dorowu/ubuntu-desktop-lxde-vnc 镜像.

1
docker pull dorowu/ubuntu-desktop-lxde-vnc

创建https未授信证书(只有官方谷歌、火狐浏览器可以选择接受风险, 并访问)

1
2
3
mkdir -p /opt/vnc/ssl
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /opt/vnc/ssl/nginx.key -out /opt/vnc/ssl/nginx.crt

运行VNC容器.

1
2
3
docker run -d -p 8443:443 -e HTTP_PASSWORD=MyPassword -e SSL_PORT=443 \
-v /opt/vnc/ssl:/etc/nginx/ssl -v /dev/shm:/dev/shm \
--name vnc dorowu/ubuntu-desktop-lxde-vnc:focal

使用官方谷歌、火狐浏览器打开 https://[server.ip]:8443 选择接受风险, 可以正常访问和使用.

登录名: root 密码Password

指定分辨率. 在容器的系统里执行:

1
vi /etc/supervisor/conf.d/supervisord.conf

找到 [program:x11vnc] 区块在 command=x11vnc -disp.... 行最后加上具体参数: -scale 1600x900, 重启容器后即可生效.

重启VNC容器.

1
docker stop vnc; docker start vnc

停止和删除VNC容器.

1
docker stop vnc; docker rm vnc