天天看点

使用 docker+tmux 加强容器调度使用 docker+tmux 加强容器调度

使用 docker+tmux 加强容器调度使用 docker+tmux 加强容器调度

<a></a>

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

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

可以最快速度进入到调度容器中。

该容器有docker deamon 的所有控制权限。

可以在容器内的tmux中跳转到其他容器中。方便调度开发。

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

<code>docker pull index.tenxcloud.com/philo/dmonit:1.0</code>

<a href="https://github.com/lijianying10/fixlinux/blob/master/dockerfiles/dmonit/dockerfile">https://github.com/lijianying10/fixlinux/blob/master/dockerfiles/dmonit/dockerfile</a>

<code>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</code>

参数解释:

映射22端口到其他位置,防止冲突

挂载docker命令到容器中

挂载docker api的named pipe控制docker

环境变量:pubkey 写入控制机的ssh 的 publickey

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

<code># cat ~/.ssh/config</code>

<code>host dmmm</code>

<code>hostname 192.168.99.100</code>

<code>user root</code>

<code>port 445</code>

输入命令:<code>ssh dmmm</code> 可进入调度容器。

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

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

使用 docker+tmux 加强容器调度使用 docker+tmux 加强容器调度

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

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

xdev 有只有一个参数是给session命名的

在不同的终端输入一样的xdev命令会进入到同一个session中

非常方便的窗口恢复切换

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

<code>[#2#root@75477389dbdf ~]$cat $(which e)</code>

<code>docker exec -it $1 /bin/bash</code>

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

切换开发tab:

快捷键: <code>m-h</code>切换到上一个tab

快捷键: <code>m-l</code>切换到下一个tab

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

使用 docker+tmux 加强容器调度使用 docker+tmux 加强容器调度

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

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

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

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