0x08 - Docker小鲸鱼的使用笔记 [2] 自动化的第一步 with Jenkins
自动化难题
当你完成了代码的提交,
当你重新又反复地进行着,搭建镜像,上传镜像,运行容器的操作,
你是否发觉这一切重复的劳作让人有点疲惫。
如果说,能够在完成了代码开发工作后,将代码 push 到云上的托管仓库时,
就可以自动进入流程,让计算机托管完成上述的一切任务,那开发工作也会变得惬意而轻松。
诚然,我们可以写一个简单的 shell 脚本:
1 | docker build -t myApps:v1.0 . |
它就可以半自动地将代码打包成镜像并装入线上的镜像仓库。
可是这样的方法让代码管理成为了一个头疼的问题。
如果说可以在线上进行这一切的操作,包括测试和代码审查,能将这一切的流程进行自动化处理,
那么对于后续的开发工作来说,可以提升相当大的开发效率。
于是请到今天的主角,Jenkins,一款好用的开源持续集成工具。
工作流程
我们想要的解决的问题是,希望将从代码提交至部署运行之间的所有流程,让 Jenkins 帮我们做自动化处理。
那么简单来说,可以将步骤整理成下面这个样子:
- 通过 Git 提交代码到 Gitee。
- 触发 Gitee 的提交 hook ,会向指定的地址发送一个 post 请求。
- 让 Jenkins 获取这个 post 请求, 然后 Jenkins 在本地服务器上将程序打包并上传至云上镜像。
- 通知集群,并更新至最新的镜像。
0x00 从安装开始
安装 Jenkins 并不是一件特别难的事,请看这里。
选择正确的版本安装,以及正确地配置环境即可。
这里嘛 ~ 以后想起来的话会贴一些可能需要注意的事项。
可以先看下 Gitee 的 [官方教程] (https://gitee.com/help/articles/4193)
0x01 配置 Jenkins
事实上 Jenkins 的配置并不难,依照其一步一步来即可。
Step 1 新建
新建一个自由风格的项目
Step 2 配置代码管理方式
使用 Git 来管理我们的的代码
Step 3 配置 Git hooks
安装 Gitee 插件,部署 Deployment Key,部署 Gitee Hooks
Step 4 配置 Docker
Docker Cloud,Docker 配置
Step 5 配置运行模式
在部署前如何运行命令行,或额外的命令