资讯专栏INFORMATION COLUMN

Docker容器系列教程(三):jenkins环境搭建与插件安装

vvpvvp / 1598人阅读

摘要:本文将使用这些命令搭建一个持续集环境,解决不能联网的问题来安装各种常用插件。总结通过本章学习,你已经知道了基于如何在环境下搭建环境,并创建一个项目。以为基础框架,为数据访问层,为权限授权层,对常用数据进行缓存,基于构建的作为前端框架。

回顾:上一文对Docker常用的命令以罗列的方式做了一个详尽的介绍。本文将使用这些命令搭建一个jenkins持续集环境,解决jenkins不能联网的问题来安装各种常用插件。
Jenkins 简述 Jenkins是什么

Jenkins是一个跨平台、免费、开源并且功能强大的应用程序,允许持续集成和持续交付项目,通过各种扩展插件可以处理任何类型的构建或持续集成。集成Jenkins还可以用于一些测试和部署技术。

持续集成是什么

随着微服务的兴起,系统被拆分的更细致,也就意味着服务越来越多,项目开发流程中,需要部署的项目会更多,而且很频繁。这样开发人员要花很长的时间去部署,再测试。于是更加自动化的部署、测试工具显得就无比的重要、因此jenkins横空出世,目的就是为了让这些重复繁琐的工作变得自动化,也就是持续集成。实际应用中是和代码仓库配合使用,当仓库某分支有提交代码时触发自动化构建。

Jenkins安装

本文是基于Docker镜像安装Jenkins,其他的安装方式请读者另行查阅资料。

docker搜索jenkins镜像
$ docker serach jenkins 
NAME                                   DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
jenkins                                Official Jenkins Docker image                   3647                [OK]                
jenkins/jenkins                        The leading open source automation server       780                                     
jenkinsci/jenkins                      Jenkins Continuous Integration and Delivery …   328                                     
jenkinsci/blueocean                    https://jenkins.io/projects/blueocean           207                                     
jenkinsci/jnlp-slave                   A Jenkins slave using JNLP to establish conn…   85                                      [OK]
jenkinsci/slave                        Base Jenkins slave docker image                 41                                      [OK]
jenkins/jnlp-slave                     a Jenkins agent (FKA "slave") using JNLP to …   33                                      [OK]
jenkinsci/ssh-slave                    A Jenkins SSH Slave docker image                31                                      [OK]
cloudbees/jenkins-enterprise           CloudBees Jenkins Enterprise (Rolling releas…   30                                      [OK]
aespinosa/jenkins                      Sets up a container with jenkins installed l…   22                                      [OK]
blacklabelops/jenkins                  Docker Jenkins Swarm-Ready with HTTPS and Pl…   13                                      [OK]
下载jenkinsci/jenkins镜像
$ docker pull jenkins/jenkins
Using default tag: latest
latest: Pulling from jenkins/jenkins
cc1a78bfd46b: Already exists 
d2c05365ee2a: Pull complete 
231cb0e216d3: Pull complete 
3d2aa70286b8: Pull complete 
b621e52d9d65: Pull complete 
f12314f6054a: Pull complete 
f5ce6397976f: Pull complete 
965859e0769b: Downloading [====>                                              ]  12.85MB/134MB
4a76f2995e39: Download complete 
37d3ee2694d1: Download complete 
651366d1a8e4: Download complete 
55793a56060f: Download complete 
7818e089879b: Download complete 
78c4019c83e7: Download complete 
6338504f77b7: Downloading [=====>                                             ]   8.06MB/75.14MB
a7bfb2832840: Download complete 
8c34aa5b5c97: Download complete 
f88eece329ad: Download complete 
4868b8d112bc: Waiting 
a98cdc04ca10: Waiting 
4c8b27fc9d78:

等待下载完成,ctrl + c可以中断下载。

启动jenkins
docker run -d -p 9000:8080 -m 1024m jenkinsci/jenkins
7008e5bf33a1feb5283e1430ef697d7e01418763c98fd2d85fdff6efe299ed8e

其中,-d表示后台运行,-p 本机段端口9000映射容器8080端口,-m设置运行最大内存为1024m,第二行的字符串表示容器运行的id,接下来的操作容器会用到。

查看启动日志

获取到上面的容器id,使用docker logs命令查看最后30行日志

$ docker logs 7 --tail 30

*************************************************************
*************************************************************
*************************************************************

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

215046cc8de7437dac6ad1d250eddcb0

This may also be found at: /var/jenkins_home/secrets/initialAdminPassword

*************************************************************
*************************************************************
*************************************************************

Jun 26, 2018 3:49:41 AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
Jun 26, 2018 3:49:42 AM hudson.model.DownloadService$Downloadable load
INFO: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
Jun 26, 2018 3:49:42 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Download metadata. 7,058 ms
Jun 26, 2018 3:49:43 AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
Jun 26, 2018 3:49:43 AM jenkins.InitReactorRunner$1 onAttained
INFO: Completed initialization
Jun 26, 2018 3:49:43 AM hudson.WebAppMain$3 run
INFO: Jenkins is fully up and running
--> setting agent port for jnlp
--> setting agent port for jnlp... done

从上面的日志可以知道,jenkins容器已经首次启动成功,并且将登录密码打印出来了。复制这个密码215046cc8de7437dac6ad1d250eddcb0

登录访问jenkins

上面指定了本地的端口为9000,于是访问地址为:http://localhost:9000

将上一步复制的密码粘贴进去,即可登录jenkins。

选择安装推荐的插件,点击,下一步

插件正在自动安装,等待完成,下一步

可以填写表单创建一个用户,这里不创建直接右下角,使用admin账户继续。

配置访问路径,这里默认就好,下一步

安装完成,下一步

Jenkins主页面

安装插件

如果上面的步骤中,插件安装失败了,提示无法连接,那就需要梯子或者更换镜像仓库。
这里我们采用比较简单的方式,更换仓库地址来解决插件无法下载安装的问题。

1.jenkins->系统管理->管理插件->高级

把:http://updates.jenkins-ci.org/update-center.json
换成:http://mirror.esuni.jp/jenkins/updates/update-center.json

2.jenkins->系统管理->管理插件->可选插件

通过右上角的搜索框搜索插件,如git、maven,勾选,点击底部按钮直接安装即可。

创建项目

这时即可基于我们安装的Jenkins插件创建一个maven项目,输入项目名 ifast,选择“构建一个maven项目”,点击确定即可。

总结

通过本章学习,你已经知道了基于docker如何在linux环境下搭建Jenkins环境,并创建一个maven项目。

作者推荐:SSM开源开发框架

ifast是一款基于Spring Boot + Mybatis + Mybatis Plus搭建的快速开发平台。ifast集成了代码生成器,具有高效的开发效率。以Spring Boot为基础框架,Mybatis plus为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,基于Bootstrap构建的hplus作为前端框架。
ifast提供了docker方式打包,启动,让部署、维护更加方便。
访问请点击 Java快速开发脚手架 ifast

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27347.html

相关文章

  • 一套基础自动化部署搭建过程

    摘要:问题背景公司初创技术团队,没有任何基础设施的情况下,需要搭建一系列管理以及自动化部署等工具所以引发了下面一系列的部署过程,历时两天,中间也是碰到各种问题,但最终把基本工具全部搭建成功,耶,下面带大家一起看下此次搭建过程。 问题背景 公司初创技术团队,没有任何基础设施的情况下,需要搭建一系列code管理以及自动化部署等工具....所以引发了下面一系列的部署过程,历时两天,中间也是碰到各种...

    mzlogin 评论0 收藏0
  • 如何使用DockerDocker-Compose和Rancher搭建部署Pipeline(

    摘要:当面临这些挑战在短短半天的时间里,使用和现有的主机,我们已经将部署好并成功运行。使用来创建应用并定义服务。 在这一部分,我们将一步步的走进Rancher,细致的探讨Rancher将如何解决在部署与容器管理时出现的种种的问题。回顾教程的第二部分,你会发现我们已经将应用的部署迁移至Docker Compose,并且已经建立了一系列工作步骤来部署我们的应用。这将使得开发人员能够轻松的对他们的...

    Enlightenment 评论0 收藏0
  • 从0开始搭建自动部署环境

    摘要:针对此改变,重新整理并记录自动部署环境配置步骤。官方源下载可能很慢,更换成国内的源,比如阿里云的源启动并设置开机自启更换镜像源从官方源下载镜像可能很慢,更换成阿里云的源即可。阿里云专属加速器地址。 前言 从Docker改变使用动态库后,DooD不再可行,而Dind依然可行。针对此改变,重新整理并记录自动部署环境配置步骤。 此环境是实现微服务自动部署的基础,使用jenkins持续集成工具...

    姘搁『 评论0 收藏0
  • 从0开始搭建自动部署环境

    摘要:针对此改变,重新整理并记录自动部署环境配置步骤。官方源下载可能很慢,更换成国内的源,比如阿里云的源启动并设置开机自启更换镜像源从官方源下载镜像可能很慢,更换成阿里云的源即可。阿里云专属加速器地址。 前言 从Docker改变使用动态库后,DooD不再可行,而Dind依然可行。针对此改变,重新整理并记录自动部署环境配置步骤。 此环境是实现微服务自动部署的基础,使用jenkins持续集成工具...

    MangoGoing 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<