1.老铁star点一点走一走,以前项目叫dao_manage太俗该改名了。所以叫tk_docker。此项目使用的是python3.6暂未测试过python2系列
2.现在这个项目在本公司生产环境跑,可以说非常稳定了。但是如果大家使用的话需要看下/tk_docker/log/cron_dump_log.py中以及/tk_docker/common/views中的代码有的地方因为业务关系我给写死了。叉会腰~

3.长啥样?看图
登录页面 主页面 主机管理 docker仪表盘 日志查看 脚本及脚本运行 历史日志下载 服务状态查看

4.pip install -r requirements.txt
5.python manage.py makemigrationspython manage.py migrate 如果出现报错请删除db.sqlite3文件
6.python manage.py python manage.py create superuser创建一个用户,把/tk_docker/tk_docker/settings.py中的一个参数改一下DEBUG=True
7.如果此时去访问127.0.0.1:8000登录的话会告诉你去登录admin添加doker主机信息。然后访问127.0.0.1:8000/admin中的host_informations添加一条主机数据
8.只要填写相应的信息即可,如果不需要使用脚本功能的话可以不写密码或者密钥路径。效果如图下:
9.在脚本seript_datas中添加脚本信息的时候是关联到主机属于一对多类型。但是脚本虽然可以增加执行参数,但是只支持一个参数。如果有需求二次开发吧。
10.log日志info查看是根据docker api进行调取日志的。但是error是根据文件,从容器中下载error文件打开返回文本。不是通过api注意这点~
11./tk_docker/lib/config.py中的参数log_tail_line是查看容器info日志默认输出多少行。service_name_list在仪表盘时候显示筛选服务,具体实现方法请看代码。log_dir_master日志每日备份保存地址。ins_env登录界面上面显示的环境说明
12.还有需要一点注意的是/tk_docker/log/cron_dump_log.py中的代码自己改~。django-crontab这模块怎么应用去谷歌一下就好。很简单。
13.如果要用docker 的话记得开docker 的远程连接 14.脚本功能支持Python但是因为paramiko 获取不到环境变量问题,请检查是否存在(/usr/local/bin:/bin:/usr/bin)里。(which 查看路径).如果不存在。请ln -s 移动到3个目录中的其中一个

#docker的远程访问开启方法 vim /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H 0.0.0.0:2375 -H unix:///var/run/docker.sock systemctl daemon-reload systemctl restart docker