使用 docker+tmux 加强容器调度

摘要

为了让自己做事更加自动化,把重复的工作尽可能降到最低,平时不但需要写很多固定操作的脚本来加快工作效率。 搞搞调度环境也是需要的。

本篇通过Docker+Tmux在RancherOS上做开发平台来实现最快速的Docker调度方便自己开发。

  1. 可以最快速度进入到调度容器中。
  2. 该容器有docker deamon 的所有控制权限。
  3. 可以在容器内的Tmux中跳转到其他容器中。方便调度开发。

经过2个版本的迭代终于搞定。到达1.0版本

Docker Registry

  1. docker pull index.tenxcloud.com/philo/dmonit:1.0

Dockerfile

https://github.com/lijianying10/FixLinux/blob/master/dockerfiles/dmonit/Dockerfile

主要功能

启动方法

  1. docker run -it --name kkk -d -p 445:22 -v /usr/local/bin/docker:/usr/local/bin/docker -v /var/run/docker.sock:/var/run/docker.sock -e 'PUBKEY=ssh-rsa XXXX' index.tenxcloud.com/philo/dmonit:1.0

参数解释:

  1. 映射22端口到其他位置,防止冲突
  2. 挂载docker命令到容器中
  3. 挂载Docker API的Named PIPE控制docker
  4. 环境变量:PUBKEY 写入控制机的ssh 的 publickey

进入控制方法

方便登陆Docker容器的配置文件

  1. # cat ~/.ssh/config
  2. Host dmmm
  3. hostname 192.168.99.100
  4. user root
  5. port 445

输入命令:ssh dmmm 可进入调度容器。

解释为啥使用ssh

主要是看了这个Docker ISSUE 然而他们并没有解决docker exec -it 和docker run -it不能使用tmux的问题。

为了能获得一个好用的tty所以,也为了节省时间所以就用了OpenSSH。

xdev

此命令用来开一个开发tmux还可以进入之前开过的tmux window

上面会标记项目名,预设:编辑器,运行窗口,测试窗口,日志窗口,数据库查看窗口。

后面有当前内存使用,当前时间,当前Unix时间戳

  1. xdev 有只有一个参数是给session命名的
  2. 在不同的终端输入一样的xdev命令会进入到同一个session中
  3. 非常方便的窗口恢复切换

e

如果你跟我一样无法忍受docker exec -it [container] /bin/bash 打太多次打到烦。 所以这个脚本是这样的:

  1. [#2#root@75477389dbdf ~]$cat $(which e)
  2. docker exec -it $1 /bin/bash

因为挂载了docker程序以及named pipe 所以在这里面是可以管理docker的。

tmux

切换开发Tab:

快捷键: M-h切换到上一个Tab

快捷键: M-l切换到下一个Tab

可以和vim很好的结合。包括其他容器内的vim都可以。

如图所示: 上面为vim的tab,下面为Tmux的tab

总结

有了这个容器之后,可以非常方便的调度其他容器。可以提升开发效率。减少操作次数。频率。如果有好的意见一定要提醒我哦。先谢过

本文来自云栖社区合作伙伴“Linux中国”

原文发布时间为:2013-04-02.

使用 docker+tmux 加强容器调度相关推荐

  1. 为什么用Yarn来做Docker容器调度引擎

    这篇文章是在一个微信群里和人聊天,然后整理出来的文字.当时Hulu推出了基于Yarn的Docker调度引擎.我正好那段时间也实现了一个类似的,经过交流,发现最后的实现基本是一致的.然而业界用的较多的是 ...

  2. 测开高阶技术- Docker/环境布置/容器 讲清楚了,全套教程

    一.简介 1.了解Docker的前生LXC LXC为Linux Container的简写.可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性.相当于C++中 ...

  3. docker安全之容器资源控制 安全加固

    目录 一.cgroup简介 二. 容器资源控制 1.内存限制 ​2.cpu限额 ​3.Block IO限制 ​三.docker 安全加固 在使用 docker 运行容器时,默认的情况下,docker没 ...

  4. 精灵云创始人晏东详解自研容器调度引擎Newben

    目前容器领域大家比较熟悉的调度引擎比如Kubernetes.Swarm.Mesos等都由国外主导,作为容器最核心的模块,国内迫切需要拥有一款完全自主知识产权的容器调度引擎.总部位于成都的精灵云,从20 ...

  5. Docker 学习1 容器技术基础入门

    一.容器是什么 二.虚拟化 1.主机级别虚拟化(两种):虚拟化整个完整的物理硬件平台,比如vmware,可以让我们拿到的虚拟机就像一个裸的物理设备一样.让我们自由的安装操作系统和使用操作系统,安装的操 ...

  6. java基础巩固-宇宙第一AiYWM:为了维持生计,架构知识+分+微序幕就此拉开之Docker(Docker概念:容器、镜像、仓库)、操作命令、Docker网络、分层、K8S<->Docker~整起

    架构知识+分+微序幕就此拉开之Docker 一.为什么要搞这个Docker,咱们为啥要学,盖房子? 二.Docker的镜像与容器 1.预备知识:虚拟(机).容器(化) 2.Docker.镜像.容器 3 ...

  7. 七牛海量数据处理平台自研容器调度框架实践

    大家晚上好,我是七牛云的布道师陈爱珍,主要负责容器技术的落地研究和布道,很高兴今晚可以在这里跟大家分享七牛云容器技术实践的经验. 今晚分享的是七牛云基于容器技术的海量数据处理平台实践.分享的内容包括三 ...

  8. 十年架构设计总结!阿里华为等大厂都这么做容器调度和服务编排

    镜像仓库 解决Docker镜像存储和访问 资源调度 决定Docker镜像可分发到哪些机器 这些解决后,就该考虑如何在集群中创建容器,即容器调度. 容器创建后如何运作才能对外提供服务,即容器调度. 1 ...

  9. 聊聊容器调度框架,看又拍云如何基于mesos实现

    内容来源:2017年8月5日,又拍云系统开发工程师黄励博在"Gopher 杭州 meetup"进行<基于mesos的容器调度框架>演讲分享.IT 大咖说(微信id:it ...

最新文章

  1. .svn提交项目提示更新副本
  2. Android内存管理之道
  3. 2 Java NIO Channel-翻译
  4. ext-2.2.1下载地址
  5. 图形图像处理_c/c++
  6. 在本地安装git的HTML帮助文档
  7. 13.2.7 中间件
  8. python 合并excel 自动更新_手把手教你4种方法用Python批量实现多Excel多Sheet合并
  9. 有关Navigation的研究——Silverlight学习笔记[29]
  10. layui 树状图默认全部展开_SolidWorks 钣金展开基础设定
  11. Java基础提高学习笔记2
  12. 全屏 虚拟机_不用虚拟机直接在线用的 Linux,统统都在这里!
  13. ubuntu16.04创建自己的桌面图标
  14. java json 转map_JAVA | 基于Fastjson的JSON串序列化和反序列化模板总结
  15. Chango的数学Shader世界(十七)RayTrace三维分形(二)—— Julia Set造型
  16. 如何修改PDF文件,PDF怎么插入图片
  17. 购买装备(“盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛
  18. Latex中将图例(图1:)改为(图1-1)
  19. 微信小程序开发(学习记录1.0)
  20. 解决SAP业务问题的思考——逆向思维

热门文章

  1. gmat模考_国外GMAT高分学霸们都在用什么复习资料?(模考篇)
  2. Java获取元注解_Java 元注解
  3. mpython 编译_使用-m选项或n执行Python代码
  4. android 电量详情,Android应用开发之Android 8.0 电池-)耗电详情获取方法
  5. uvccamera 后台服务_UVCCamera的一些坑
  6. promise allrace
  7. Elasticsearch IK分词器
  8. tensorflow GPU环境配置 Nvidia+cuda+cudnn
  9. 2.8 计算图的导数计算
  10. android calendarview 单月显示博客,android CalendarView