自制Linux桌面的Docker镜像

杀马特。学长 韩版系。学妹 提交于 2020-01-06 14:02:13

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

本文以制作一个Debian桌面镜像为例,介绍手动制作容器镜像的过程。

# 拉取最新的Debian官方包
docker pull debian:latest
# 跑起一个Debian实例
docker run -it debian:latest
# 更改软件包源到国内(示例为阿里云)
echo -ne "deb http://mirrors.aliyun.com/debian/ buster main non-free contrib \ndeb-src http://mirrors.aliyun.com/debian/ buster main non-free contrib \ndeb http://mirrors.aliyun.com/debian-security buster/updates main \ndeb-src http://mirrors.aliyun.com/debian-security buster/updates main \ndeb http://mirrors.aliyun.com/debian/ buster-updates main non-free contrib \ndeb-src http://mirrors.aliyun.com/debian/ buster-updates main non-free contrib \ndeb http://mirrors.aliyun.com/debian/ buster-backports main non-free contrib \ndeb-src http://mirrors.aliyun.com/debian/ buster-backports main non-free contrib \n" > /etc/apt/sources.list
# 安装基础的桌面环境 和 VNC服务器
apt-get udpate && apt-get -y install --fix-missing vim mate-desktop-environment-core tightvncserver
# 安装Firefox浏览器、中文字体
apt-get -y --fix-missing install firefox-esr locales ttf-wqy-zenhei ttf-wqy-microhei
# 配置VNC密码
mkdir /root/.vnc && echo "bilibili" | vncpasswd -f > /root/.vnc/passwd && chmod 600 /root/.vnc/passwd
# 配置中文字体设置,推荐选择如下: 158. en_US.UTF-8 UTF-8 、483. zh_CN GB2312、 485. zh_CN.GBK GBK、 486. zh_CN.UTF-8 UTF-8、 494. zh_TW.UTF-8 UTF-8
dpkg-reconfigure locales
# 修改时区TimeZone,我选择 Asia/Shanghai +08:00
dpkg-reconfigure tzdata
# 定制完成,将此实例打包成到本地 bilibili/debian-desktop 镜像
docker commit -m "Debian Buster Desktop image with VNC" ${容器ID} bilibili/debian-desktop
# 验证一下,用新镜像跑个实例,
docker run -d --name debain-buster -p 5900:5900 -e USER=root bilibili/debian-desktop bash -c "touch /root/.Xresources && vncserver :0 -geometry 1024x768 -depth 24 && tail -F /root/.vnc/*.log"
# 观察终端日志
docker logs -f debain-buster

用VNC-Client连接对应的IP和端口就可以看到效果了:
容器里跑Linux桌面
好,理顺了。要什么镜像就自己动手了、玩得开心

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!