1. Window10
1.1 docker安装
https://www.runoob.com/docker/windows-docker-install.html
1.2 centos7-vnc安装
- 拉取镜像centos7
docker pull centos:7
可以从https://hub.docker.com/_/centos?tab=tags查询拉取需要的镜像版本。
- 启动容器
docker run --name centos-desktop-vnc --privileged -d -p 5901:5901 --ulimit memlock=-1 -td centos:7 /usr/sbin/init
指定容器的名称为centos-desktop-vnc,并暴露宿主机的5901来连接vnc。
- 配置desktop环境
docker exec -it centos-desktop-vnc bash
默认的镜像不带desktop环境,需要手动安装。
1) 查看支持环境
yum grouplist
查看可安装且支持的桌面环境。
2) 安装gnome环境
yum groupinstall GNOME Desktop -y
安装gnome桌面。
3) 配置系统默认的启动模式
*
systemctl get-default
systemctl set-default graphical.target
systemctl set-default multi-user.target
1.3 配置vnc
- 安装vnc server、vim、net-tools
yum -y install tigervnc-server tigervnc-server-module vim net-tools
- 配置vnc server
1)复制配置文件模板
cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
2)设置生效用户
修改配置文件
vim /lib/systemd/system/vncserver\@\:1.service
将配置文件的修改为root,由于root的home路径是/root,不是/home/root,因此注意修改PIDFILE的路径
改好之后如下
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
4) 修改vnc server密码
vncpasswd
5) 生效vnc配置
systemctl daemon-reload
6) 配置vnc开机启动
systemctl start vncserver@:1
systemctl enable vncserver@:1
7) 检查vnc server是否启动
netstat -lnpt|grep Xvnc
启动成功如下:
8) 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
9) 查看ip
Ifconfig
查看ip。
1.4 Window安装Vnc客户端
-
下载vnc server,安装vnc server。
-
调节分辨率
Vnc链接完docker容器后,不能全屏显示,需要调整分辨率,分辨率值根据自己的电脑分辨率进行设置。
1) 关闭vncserver:vncserver -kill :1
设置分辨率并重启:vncserver -geometry 1366x768 :1
第一种方法只是临时的改变,每次关机开机都需要重新配置。
2)~/.vnc/config
geometry=1920x1080
这个方法永久的改变了vnc链接的分辨率。
注意:安装好后,不要restart,直接关机再开机。
1.5 安装软件
yum install epel-release
安装扩展库,这个应该完成容器创建,便可以安装。- 安装中文支持库
yum -y groupinstall Fonts
- 时间修复
date –R
timedatectl set-timezone Asia/Shanghai
- 安装octave
1) yum install octave
2) 配置gnuplot
Vim /usr/share/octave/3.8.2/m/startup/octaverc
添加graphics_toolkit(‘gnuplot’)
5. 安装python3
CentOS 7.4 安装python3及虚拟环境 - 简书 (jianshu.com)
6. 安装git
Linux(Centos 7)下安装Git并配置连接GitHub - smartwen - 博客园 (cnblogs.com)
1.6 centos7push/pull
Docker 将容器制作成镜像并上传 - 掘金 (juejin.cn)
docker ps -a | grep centos-desktop-vnc
docker commit 4052d86631b0 centos:7-vnc
#3、tag
docker tag vs:v1 cccc/vserver:v1
#4. Push
docker push cccc/vserver:v1
2. MacOS
1中配置的centos系统被pull到Mac上。由于MAC不能链接D-BUS,通过安装也没有得到很好的解决。
目前通过xquartz解决centos界面应用的问题,如gnuplot画图,firfox显示,python3画图等问题。
-
brew install xquartz
-
open –a XQuartz
-
在mac上面的bar找到XQuartz,右键进行
-
ip=$(ifconfig en0 | grep inet | awk ‘$1==“inet” {print $2}’)
xhost + $ip
docker run -d --name firefox -e DISPLAY=$ip:0 -v /tmp/.X11-unix:/tmp/.X11-unix jess/firefox
- 如果换了网络,ip有发生变化的可能,则在进入容器后:
设置4中打印的ip。
export DISPLAY = 192.168.3.1:0,
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)