【注意:】jenkins的docker镜像,需要从官网进入直接获取,其他地方获取到的docker镜像,可能因为Jenkins版本过低,导致后续插件安装失败等问题!!!

============================================================================================

1.拉取镜像

需要从官网进入:https://jenkins.io/download/

命令:

docker pull jenkins/jenkins:lts

注意查看 docker镜像中,Jenkins版本是否是最新版

命令:

docker inspect 806f56c84444

2.创建目录

由于防止jenkins中重要文件因为容器损毁或删除导致文件丢失,因此创建文件对外挂载

mkdir jenkins

并且需要对目录开放docker进程操作的完全读写的权限

chmod  /apps/Devops/jenkins

3.启动容器

docker run -itd -p : -p :  --restart always -v /apps/Devops/jenkins:/var/jenkins_home --name jenkins  jenkins/jenkins:lts

并查看日志

docker logs -f jenkins

出现如下日志,即容器启动成功

4.页面查看,查找admin初始密码,并复制到此

访问地址:

http://192.168.92.130:9980

出现如上页面,代表jenkins启动成功。

需要copy管理员初始密码从上图所提示的目录地址的文件中。

获取admin初始密码有三个途径:

  1》你可以选择进入容器,然后按路径进行查找

docker exec -it jenkins /bin/bash
cd /var/jenkins_home/secrets/
cat initialAdminPassword

可以获取到这一串密码

  2》也可以去已经挂载到容器外的宿主机的目录下去查找

cd /apps/Devops/jenkins/secrets
cat initialAdminPassword

可以获取到这一串密码

  3》刚刚的jenkins启动日志,最后也展示了这一串密码

复制这一串admin的初始密码,进入jenkins。需要等待数十秒!

5.安装插件

如上图所示,左侧显示安装建议的插件。右侧选择自定义安装插件。

先按照建议插件进行安装,点击左侧即可。

如上,如果全部都能正确安装,更好。出现安装失败的插件,等待所有结束,下方会有Retry可以进行重试。

最后重试后,依旧没有安装成功的,可以先continue,完成初始化的步骤。随后可以通过本篇解决

continue后,完善如下信息,即可保存并完成

U:AngelSXD

P:F09..

即可开始了!

6.安装Maven插件

点击左侧【系统管理】---【插件管理】

搜索 【Maven Integration】,勾选并安装

安装过程

安装完成后,即可在插件管理下的  已安装installed选项卡下 看到刚刚已经安装的插件

7.安装Gitlab插件和GitLab Hook插件

在Available选项卡下

搜索GitLab,安装GitLab插件和GitLab Hook

点击Install  without restart

8.安装Maven Integration插件

搜索Maven Integration,勾选并安装

9.安装Publish Over SSH插件

【安装这个插件的原因,是因为本方式是使用docker启动jenkin服务,所以在jenkins后续执行构建任务时候,需要在build成功后,将服务的jar包[以spring boot]服务为例,需要将jar包拷贝到Dockerfile所在服务器的指定目录,进行微服务的启动】

【因此,此处需要配置SSH服务器的连接,意思就是在jenkins的任务结束后,去执行指定的服务器上的shell命令,做spring boot或cloud服务的镜像的构建,容器的运行,等一系列的事情】

【因此需要安装本插件】

搜索SSH

安装完成后:首先添加凭证

添加凭证【username+password类型的凭证】

接着,

点击系统管理,进入系统设置

找到SSH remote  hosts,进行配置

配置SSH连接Dockerfile所在服务器的相关信息,并添加凭证,最后测试连接并保存,以备后面使用!!!

本插件的安装,以及配置连接等工作,就是为jenkin配置后续的自动化部署做准备!

【后续跳转:【Devops】【docker】【CI/CD】3.Jenkins+GitLab+docker+springboot 实现自动化部署

到这里,docker搭建Jenkins环境已经完成。必要的插件也全部安装完成了!!!!!

====================================================================================================

【Devops】【docker】【CI/CD】2.docker启动jenkins环境+安装必要的插件的更多相关文章

  1. CI Weekly #6 | 再谈 Docker / CI / CD 实践经验

    CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试. DevOps 等实践教程.工具与资源,以及一些工程师文化相关的程序员 Ti ...

  2. Docker / CI / CD

    CI Weekly #6 | 再谈 Docker / CI / CD 实践经验   CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动 ...

  3. Azure Data Factory(三)集成 Azure Devops 实现CI/CD

    一,引言 由于上一节文章内容过长,无法分享Azure Data Factory 的持续集成,持续发布.今天将着重介绍一下在使用 Azure DevOps Pipeline 发布,自动进行持续集成,并且 ...

  4. 【Devops】【docker】【CI/CD】docker启动的Jenkins容器 - 系统管理 - 全局工具配置 - 自动安装JDK、Maven、Git、Docker

    本篇适用于jenkins是启动的docker容器,自动安装JDK  Maven  Git   Docker等全局工具 ========================================= ...

  5. Devops、CI\CD、Jenkins

    Devops DevOps对应用程序发布的影响 在很多企业中,应用程序发布是一项涉及多个团队.压力很大.风险很高的活动.然而在具备DevOps能力的组织中,应用程序发布的风险很低,原因如下 [2] : ...

  6. Jenkins自动化CI CD流水线之1--介绍与安装

    第1章 大纲 CI/CD, DevOps介绍 Git安装与使用 Jenkins安装与使用 权限管理 参数化构建 Master-Slave 流水线(Pipeline) 邮件通知 应用案例 自动发布PHP ...

  7. CI/CD之Gitlab集成Jenkins多分支pipeline实现质量检测和自动发布

    本次实施主要实现: 代码提交gitlab,自动触发Jenkins构建 gitlab发起Merge Request, 需要Jenkins检查通过才可以merge,实现代码review和质量管控 gitl ...

  8. CI/CD版本回滚Jenkins解决方案

    一.创建项目 填写项目名,关系到项目路径对应请谨慎命名 二.项目配置 1.配置字符串参数和选项参数 2.代码仓库配置 3.构建环境 4.构筑脚本配置 5.点击左下方的保存或者应用 三.使用方法 1.发 ...

  9. docker学习实践之路[第一站]环境安装

    安装虚拟机(VMware Workstation) 这步就不多说了,下载完软件之后一路点击下一步,直至安装完成. 安装Ubuntu 16.4 server 下载ubuntu 16.4,并安装在虚拟机中 ...

随机推荐

  1. Kali Linux没有声音的解决方法

    Kali Linux系统默认状态下,root用户是无法使用声卡的,也就没有声音.启用的方法如下:         (1)在终端执行命令:systemctl --user enable pulseaud ...

  2. ThinkPHP中的统计查询方法

    • count() 表示查询表中总的记录数 • max() 表示查询某个字段的最大值 • min() 表示查询某个字段的最小值 • avg() 表示查询某个字段的平均值 • sum() 表示求出某个字 ...

  3. C++ code:动态内存

    C++给我们提供了动态内存分配的new和delete操作.一般而论,new和delete操作多用在内存需求捉摸不定的场合.然而,需要处理的数据,如果变动范围很小,我们可以用STL中通用型的容器来做,大 ...

  4. InnoDB逻辑存储结构

    从InnoDB存储引擎的逻辑存储结构看,所有数据都被逻辑地存放在一个空间中,称之为表空间(tablespace).表空间又由段(segment).区(extent).页(page)组成.页在一些文档中 ...

  5. spfa学习笔记

    序 spfa它死了 --by 大佬 但是本蒟蒻还是一如既往的使用spfa... 因为太弱了,其他什么都不会.于是就疯狂开O2跪倒在spfa上. 例题--汽车加油行驶问题 loj跳转链接 luogu跳转 ...

  6. SpringMVC高级参数绑定(数组和List)

    本节内容: 参数绑定之数组 将表单的数据绑定到List 复制下上篇博客中的工程,作为今天开发的工程. 一.参数绑定之数组 1. 需求 在商品列表页面选中多个商品,然后删除. 2. 需求分析 功能要求商 ...

  7. T-SQL语句1

    一.创建表 1.创建常见表 create table tablename ( Column_name1 dataType, Column_name1 dataType, Column_name1 da ...

  8. CSS3中border-image属性详解

    border-images可以说也是CSS3中的重量级属性,如同圆角.边框颜色属性border-color.块阴影属性一样,也是属于边框属性中的一员. 从其字面意思上看,我们可以理解为“边框-图片”, ...

  9. JS几种变量交换

    JS几种变量交换方式以及性能分析对比   原文 原文是自己博客上发布的JS几种变量交换方式以及性能分析对比 前言 “两个变量之间的值得交换”,这是一个经典的话题,现在也有了很多的成熟解决方案,本文主要 ...

  10. 将 Ubuntu 16.04 LTS 升级到 Ubuntu 18.04 LTS

    将 Ubuntu 16.04 LTS 升级到 Ubuntu 18.04 LTS   Ubuntu 18.04 LTS(Bionic Beaver)即将发布, 如果您正在使用Ubuntu 16.04LT ...