目录
- 前言
- 一、基于GNOME构建远程桌面
- 二、基于Xfce构建远程桌面(轻量级)
前言
本文提供两种安装方式,均自己测试过,最后还是选择了Xfce,因为它比较轻量级,占用资源较少。大家也可以都试试,比较感受下。
一、基于GNOME构建远程桌面
GNOME 提供一个现代、直观的用户界面,注重美观和用户友好性。GNOME 通常相对较重,对系统资源的需求较高,GNOME 是一个大型的开源社区项目,内部应用完整。这意味着在性能较低的硬件上可能会感觉较为占用资源,会出现比较卡顿情况,比如我只分配虚拟机2核2G资源,安装连接后桌面就挺卡的。
docker pull centos:7 # 拉取镜像
docker run --name centos-desktop-gnome --privileged -d -p 3389:3389 --ulimit memlock=-1 -td centos:7 /usr/sbin/init # 启动容器, 并暴露端口,远程桌面端口是3389
docker exec -it centos-desktop-gnome bash # 进入容器环境
yum grouplist # 查看支持的环境
yum groupinstall GNOME Desktop -y # 安装gnome环境,这个挺大的
yum install -y epel-release # 感兴趣可以查下epel-release和xrdp
yum install -y xrdp
systemctl start xrdp # 启动xrdp
systemctl enable xrdp
netstat -ntlp |grep xrdp # 检查是否启动成功
passwd # 设置登录密码,然后本地windows输入ip和用户名连接即可
systemctl stop firewalld # 若连不上,很可能就是没关闭防火墙,要注意!!!虚拟机防火墙,容器防火墙
本地windows用远程桌面连接masterIp后,因为最初已经设置了端口映射,所以能直接访问到部署的容器。
连接上后,远程桌面启动终端,ifconfig命令没有的话,可以输入命令
yum install -y net-tools
安装一下,这就成功了
如果你想把这个镜像打包,可以再执行下面操作
docker stop <container_name_or_id> # 确保容器处于停止状态
docker commit <container_name_or_id> <new_image_name> # 创建新镜像
docker images # 查看所有镜像
docker start container_name # stop后可用start再启动
这个镜像打包出来,查看镜像发现差不多2.5G,真的大,主要是资源占用比较多,分配内存小,远程桌面用起来贼卡
二、基于Xfce构建远程桌面(轻量级)
Xfce 是一个轻量级、快速、而且资源占用相对较少的桌面环境。它提供了一些基本的桌面功能,但相较于 GNOME 来说,它更注重性能和资源效率,所以用这个再试试。
docker pull centos:7 # 拉取镜像,若已拉取则无需再拉取
docker run --name centos-desktop-xfce --privileged -d -p 3389:3389 --ulimit memlock=-1 -td centos:7 /usr/sbin/init
docker exec -it centos-desktop-xfce bash
yum install -y epel-release
yum install -y xrdp
yum groups install -y Xfce # 基于上面epel-release,得先安装它
yum install -y cjkuni-ukai-fonts # 中文字体
yum install vim # 安装vim编辑器
vim ~/.Xclients
# 编辑如下内容
#!/bin/bash
XFCE="$(which xfce4-session 2>/dev/null)"
exec "$XFCE"
chmod +x ~/.Xclients #执行权限
systemctl start xrdp # 若重启了容器,也要重启xrdp,否则连不上
passwd # 设置登录密码
安装成功后,本地windows连接进入后,虽然没Gnome那么高清,相比模糊一丢丢,但一点也不卡,进入或操作都很流畅,果然是轻量级
然后也按照之前方式打包镜像,大小是1.55G,少了1G
拓展:若想直接用这种自制Linux桌面环境,只要基于centos7作为基础,再加入桌面化环境,并打包成镜像,就可以上传到远程仓库,然后以后拉取这个打包后的新镜像自动部署即可。