使用 docker+tmux 加强容器调度

使用 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.

时间: 2024-10-16 22:47:16

使用 docker+tmux 加强容器调度的相关文章

Docker Swarm:经济高效的容器调度

本文讲的是Docker Swarm:经济高效的容器调度[编者的话]本文探讨了几种容器调度策略,并以内存约束为例,讨论了如何利用Docker Swarm,通过资源约束实现容器的合理调度.其中,对容器资源的约束,包括硬约束和软约束,硬约束是指内存资源的实际限制条件,而软约束则是当服务器实际内存资源有足余时,容器可自由使用,一旦内存资源有所紧缺,则约束开始生效.硬约束和软约束的结合使用,可以在减少资源浪费的同时保证服务的稳定性. 我们每天在数百台服务器上运行成百上千个容器,面临的最大一个挑战是怎样高效

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

前言 Mesos 其实我不是非常熟悉,所以有些内容可能会有失偏颇,带有个人喜好.大家也还是需要有自己的鉴别能力 Mesos和Yarn 都非常棒,都是可编程的框架.一个硬件,不能编程,就是死的,一旦可以编程就活了,就可以各种折腾,有各种奇思妙想可以实现,同样的,一个软件,只要是可编程的,基本也就活了,容易形成生态. Yarn VS Mesos 我先说说在做容器调度引擎的时候,为什么选择Yarn而不是Mesos. 可部署性 先说明下,这里探讨的是Yarn或者Mesos集群的部署,不涉其上的应用.Ya

【干货】全自主研发Docker容器调度引擎——Newbon

背景:       大家所熟知的Docker容器调度引擎包括,K8S, Swarm, Mesos和Rancher,这些调度引擎都是开源的国外引擎,各有各的特点.在同客户和圈内人士沟通中,很多人直言国内容器创业公司大多只是将各种开源组件集成在一起,同质化严重,没有核心竞争力.作为国内第一批的容器创业公司--Ghostcloud精灵云,深知国内需要在容器的诸多领域拥有真正完全可控,同时具有核心竞争力的产品.因此,容器云平台最核心的调度引擎迫切需要一个完全可控,自主的产品,在这种背景下Newbon应运

自研容器调度引擎Newben会成为“中国的K8s”?

作者:精灵云 前言: 一个月以前,我们对外详细介绍了内置在精灵云EcOS(Enterprise Container Operation System,企业级容器云平台)中的全自研容器调度框架Newben ,文章刚发出,就有很多人向小GO询问Newben是否会开源的问题.在此,小GO引用精灵云创始人晏东对CSDN的专访回答作为给大家的统一答复:"Newben适用于所有以Docker作为虚拟化引擎的场景,目前主要面向中大型企业,不对外开放代码."也就是说,Newben目前暂不开源,而是内置

【重磅】完美融合Kubernetes,Ghostcloud企业级容器云平台EcOS率先实现双容器调度

前言 给大家报道一个最新重磅消息:最新版Ghostcloud企业级容器云平台EcOS(Enterprise Container Operation System)已完美支持容器市场最主流的调度引擎Kubernetes,并于今日正式上线啦!内置自研容器调度框架Newben和开源引擎Kubernetes,意味着EcOS平台率先实现了双容器调度引擎的融合.(新平台EcOS-Kubernetes现已开放试用申请,请至文末扫码申请.) EcOS平台是Ghostcloud推出的企业级容器云PaaS/CaaS

Docker的Windows容器初体验

系列文章 第一篇 Docker的Windows容器初体验 - 本文 第二篇 阿里云Windows Server 2016环境Docker试用 最近微软发布了Windows Server 2016,其中最让广大开发者和运维同学期待的就是Docker对Windows容器的支持. Windows支持两种不同类型的容器,即 Windows Server 容器和 Hyper V 容器. 这两种类型的容器的使用方式相同,也支持相同的容器映像. 但是它们的实现机制不同,提供了不同的安全隔离级别 Windows

深入了解docker(docker镜像、容器、仓库的基本概念)_docker

本文重点给大家介绍docker镜像.容器.仓库的基本概念的知识. Docker概念 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口. 镜像 Docker 镜像就是一个只读的模板. 例如:一个镜像可以包含一个完整的 CentOS 操作系统环境,里面仅安装了 httpd或用户需要的其它应用程序. 镜像可以用来创建 Docker 容器. Dock

专访Docker VP:容器的现状和发展趋势

本文讲的是专访Docker VP:容器的现状和发展趋势,[编者的话]Marianna Tessel有将近20年工程和领导经验,在大公司和初创公司都有工作履历.她现在领导Docker的工程师团队,直接贡献于开源项目,同时也负责Docker的商业支持.加入Docker前,他是VMware的VP,领导几百名工程师团队,负责开发多种VMware vSphere子系统.她以对多种技术生态系统推动而知名,被选为2013年最佳25位技术领域最有内在能力的女工程师.此文中,她对Docker现状,安全问题,以及与

docker 镜像与容器存储目录结构精讲

docker 镜像与容器存储目录结构精讲 很多朋友在初学 docker 的时候非常迷茫,不清楚 docker 是怎样的一种存储方式,并且也不清楚 docker 到底存储在什么地方.其实 docker 的镜像与容器都存储在 /var/lib/docker 下面,那么基于不同的系统又有不同的存储方式,在 ubuntu 下面存储方式为 AUFS:在 Centos 下面存储方式又是 device mapper,下面我们先来看一下 /var/lib/docker 目录,分别有三个阶段,看看在不同阶段都新增