Docker容器中运行的Ubuntu也可以通过VNC开启桌面,配置过程并不是很复杂。
在这个过程中需要安装:
- 桌面环境:Unity或Xfce;
- vnc4server;
- 常用桌面软件。
步骤:
安装桌面环境
桌面环境可以选Unity或Xfce,这里推荐Unity,更漂亮一些。
apt install -y xorg openbox
apt install -y ubuntu-desktop
apt install -y gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
安装vnc4server
apt install -y vnc4server
如果找不到源可以参考这篇 Ubuntu安装vnc4server找不到源的问题 。
安装完后配置VNC端口,修改/usr/bin/vncserver
,在这个文件中找到vncPort一行,可以看到$vncPort = 5900 + $displayNumber;
,将5900修改为需要的端口号。
修改xtartup文件
编辑~/.vnc/xstartup
,Unity版内容如下
#!/bin/sh
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
gnome-session &
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &
启动
使用命令vncserver
命令启动桌面,首次需要输入密码。默认端口5900,加上displayNumber 1,连接端口就是5901。
关闭
关闭vncserver:
vncserver -kill :1
设置分辨率
设置分辨率并重启:
vncserver -geometry 1366x768 :1
连接
使用VNC Viewer或其它VNC软件通过5901端口连接桌面。
MAC系统可以直接使用Finder菜单栏中的前往->连接服务器
,输入vnc://ip:5901
,再按提示输入VNC的密码就可以了。
附上桌面截图
Xfce版
个人认为Xfce不如Unity漂亮,但不排除有人喜欢,配置方法如下。
安装环境
apt install -y xfce4 xubuntu-desktop
修改xstartup
sed -i 's$x-window-manager$xfce4-session$' ~/.vnc/xstartup
vnc4server相关的步骤大部分是一样的,不再列出。
附上Xfce的桌面截图
如果遇到终端模拟器(Terminal Emulator)打不开的情况,可将Xfce Terminal设置为默认终端
apt-get install xfce4-terminal #安装Xfce时应该是装过的
update-alternatives --config x-terminal-emulator
在列表里选择Path为/usr/bin/xfce4-terminal.wrapper
的就行了。
Chrome浏览器
Chrome浏览器安装完后直接通过菜单可能打不开,需要换个打开方式。
### 安装
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
dpkg -i google-chrome-stable_current_amd64.deb
### 打开,桌面环境的终端中执行
google-chrome --no-sandbox
但由于加上了--no-sandbox
,稳定性和安全性大大降低,页面可能会崩溃,所以还是推荐使用自带的Firefox浏览器。
注意点
- Unity版的
gnome-terminal
不在菜单中,即使配置了也启动不了; - Xfce版的
Xfce Terminal
可以正常启动; - Xfce的资源占用比Unity要高一些;
- 两个桌面都安装了一些不必要的软件,如LibreOffice等,用不到的可以删了;