2016 - 2024

感恩一路有你

jenkins用不用docker docker和jenkins区别或着有什么关系?

浏览量:1303 时间:2021-03-15 01:39:02 作者:admin

docker和jenkins区别或着有什么关系?

docker相当于是一个容器,可以集合所有软件在里面

jenkins是一个自动化部署工具

微服务在Docker k8s下如何部署?

正好最近在项目中用到了这些技术,我来抛砖引玉吧。

首先说结论:

1. k8s 是非常好的一项技术,很稳定。如果发现正在运行的 pod 的数量不等于用户设定的期望值, k8s 则会自动创建或者删除 pod,直到两者相等。这样既保障了服务的不间断运行,同时还可以动态缩放服务的规格。用户只要调整 pod 的 replicate 的数量即可,其他的都交给 k8s 就好,非常省心。

2. 要用 jenkins 来集成命令行操作,虽然我个人非常偏爱使用命令行,但是我不得不承认用 jenkins 集成命令行操作会极大的提升工作效率。

下面说实现步骤:(本文以 azure 平台为例)

1. 编写 Dockerfile

2. 在 jenkins 创建任务,并执行包含如下命令的脚本

2.1 git pull 源代码到本地

2.2 docker build 命令生成镜像文件

2.3 docker 定义镜像文件版本号并上传到 azure 平台

2.4 kubectl 命令来创建 k8s 的 deployment & service.

2.5 每次版本更新可以调用 update image 来编译新的镜像版本并提供给 k8s 使用

注意在创建 k8s 的 deployment 和 service 的时候需要编写 yaml 格式的配置文件, deployment 配置包括 名称,镜像文件地址, cpu 最大最小分配值,内存最大最小分配值等。service 配置文件包括 名称,引用的 deployment 名称,以及是否使用 load balancer等。

更多详细信息可以参考我的 wiki. https://github.com/FamingHou/MyWiki

用Jenkins打包docker镜像的时候,怎么把版本号加上去?

  1. 先创建一个自由风格的软件项目

  2. 勾选"参数化构建过程", 然后选择参数类型, 比如"字符参数"

  3. 在构建步骤中选择"Build/Publish Docker Image"(前提是安装好docker插件)

  4. 如果不想使用docker插件, 可以直接通过脚本的方式, 但是tag还是通过${var}的方式给到docekr build命令

  5. 保存后点击"Build with Parameters"按钮, 开始构建, 输入tag参数值后, 点击"开始构建"

jenkins用不用docker docker自动化部署 jenkins部署docker

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。