本文摘自华为云论坛
作者ID:长期飘在公有云上
跳转机容器化方案介绍
想必大家在利用跳转机进行解决方案开发和测试过程中都会遇到这些问题:1. hi,兄弟,帮我分配个跳转机;
2. 谁呀,XX跳转机我在使用,不要抢占;
3.跳转机全分配完了,没有可用的了,而实际上有很多跳转机分而不用;
4. 我想用跳转机来模拟用户,可没有足够的跳转机资源进行容量测试;
5.我们跳转机是WINDOWS系统,而实际交付版本配套工具是需要安装在LINUX上的,无资源进行镜像测试;
……
遇到以上问题怎么办? 通过学习和实践利用容器化跳转机方案将如上问题彻底解决,现就该方案跟大家做个分享,欢迎大拿们一起交流。什么是容器
容器是应用层的抽象,多个容器可以在同一台宿主机上运行,并共享操作系统资源,每个容器在用户界面是独立运行的,互相不干扰。解决方案思路介绍
面对上面的问题我想出如下三套解决思路,通过验证得出思路2最可行。相比方案1来说资源独立;相比思路3,操作简单。所以,具体实施时按照思路2展开。 思路2中,关键难点在于自定义进行制作和容器自动化管理部分,下面就这两部分做一个介绍。自定义桌面版镜像制作
相信大家跟我一样,已经习惯了windows桌面版操作系统办公,所以我们这次目标是制作一个带有常用办公软件的桌面版镜像,为下面拉起批量容器做好准备。自定义桌面版镜像制作步骤:
1. 服务器基础操作系统和网络已经完成配置,这部分不再赘述。 2. DOCKER系统安装,并设置开机自启动。在宿主机上执行yum install docker 安装docker
在宿主机上执行systemctl enable docker.service 设置自动开启启动
Docker pull soff/ubuntu-xfce-vnc
(该镜像支持VNC+RDP+XFCE),由于我负责的项目需要通过RDP协议登录到容器上,所以拉取上面的镜像。
备注:
根据大家需要,可以拉取不同的基础镜像如:
Docker pull dorowu/Ubuntu-desktop-lxde-vnc
(该镜像支持VNC+XFCE)
4. 远程登录上容器上进行办公软件安装
5.镜像调试
5.1先拉取容器界面管理镜像,并运用容器,可实现容器和镜像文件可视化管理。
Docker pull portainer/portainer
拉起镜像
docker run -d --name docker-admin -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
运行镜像
http:IP+port
页面访问可视化管理工具
5.2 手工拉取基础镜像
5.3远程登录,并业务验证
Docker commit –a “author” test3 myimages-xfce:v1
将上面创建的容器test3作为可以复制的镜像,并重新命名为为myimages-xfce:v1,后面就可以使用该镜像进行拉起和运行。
commit语法说明:
容器自动拉起和关闭流程
通过前面的介绍,相信大家已经完成了自己想要的镜像文件,如何利用镜像文件完成容器自动拉起和自动关闭呢?下面图为例,做一个简单介绍。应用程序负责调用宿主机利用自定义镜像创建或删除容器脚本
生成的Docker可在业务中使用
用户使用VNC或RDP协议登录Docker