Docker版本Jenkins的使用

Docker版本Jenkins的使用

低调的微胖关注赞赏支持

Docker版本Jenkins的使用

12018.05.15 18:21:50字数 1202阅读 22588

一. 什么是Jenkins

Jenkins是当前非常流行的一款持续集成工具,可以帮助大家把更新后的代码自动部署到服务器上运行。

二. 为什么用docker版的Jenkins

Jenkins主要有三种安装方式

  1. 下载官方war包,放到tomcat中直接运行。
  2. yum安装,感兴趣的朋友可以参考之前我写的一篇文章在linux服务器上安装Jenkins。
  3. 使用官方docker镜像。

本人之前也是使用yum安装的方式安装Jenkins的,不过自动用上docker后,就再也没那样安装过。不得不说直接使用docker镜像真是简单除暴无脑。

三. 准备工作

要使用docker镜像,首先你得先安装docker。对docker不熟悉的朋友可以参考我之前写的一篇docker安装和简单使用的教程。

四. 寻找官方镜像

我们可以到Jenkins官网上寻找docker镜像地址。

Jenkins官网

 

点击docker按钮,自动跳转到dockerhub,在这里可以找到下载命令

Docker Hub网站

五. 启动Jenkins

找到了官方镜像后,我们就可以开始安装了。进入安装好了docker的linux服务器,这里我们以之前教程介绍的阿里云centos7.3环境为例。

输入命令,下载Jenkins官方镜像到服务器上。

docker pull jenkins/jenkins

 

下载镜像

耐心等待下载完成,输入命令查看下载完成的镜像

docker images

镜像下载完成

镜像下载完成,下面就要开始启动容器了。启动容器前,建议大家仔细阅读前面寻找镜像时Docker Hub上关于jenkins镜像的详细说明。

在镜像文档里,我们知道Jenkins访问的端口号是8080,另外还需要暴露一个tcp的端口号50000。我们使用如下命令启动Jenkins镜像。

docker run -d -p 80:8080 -p 50000:50000 -v jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins docker.io/jenkins/jenkins

这里逐条解释下各参数的意义。

  • -d 后台运行镜像
  • -p 80:8080 将镜像的8080端口映射到服务器的80端口
  • -p 50000:50000 将镜像的50000端口映射到服务器的50000端口
  • -v jenkins:/var/jenkins_home /var/jenkins_home目录为jenkins工作目录,我们将硬盘上的一个目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录。
  • -v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置。
  • --name jenkins 给容器起一个别名

启动后输入命令docker ps -a查看所有容器,可以看到jenkins已成功启动。

启动成功

 

六. 配置Jenkins

在浏览器输入http://ip进入Jenkins登录页面。页面会提示你到服务器的指定位置获取初始化密码。

 

输入启动密码

注意,因为我们是docker版的jenkins,所以这个路径不是服务器的路径,而是容器内的路径。我们可以通过如下命令从容器中获取到初始化密码。

docker exec jenkins tail /var/jenkins_home/secrets/initialAdminPassword

image.png

在页面输入密码,点击Continue,进入插件安装页面。我们点击左边的Install suggested plugins,安装推荐插件就好。

 

image.png

耐心等待安装完成

 

image.png

安装好插件后,系统会提示建立管理员账户。

 

 

image.png

创建管理员账户后进入系统,我们先来配置常用工具。

工具配置

进入工具配置页,首先看到的就是jdk配置,这里我们先使用自动安装的java8

jdk自动安装

注意,自动安装jdk需要你填入oracle的账号密码,这样Jenkins才能自动帮你到oracle安装。如果没有oracle账号,建议先去Oracle官网注册一下。

配置好jdk自动安装后,我们继续配置gitgit的字段安装更简单,起个别名,勾上自动安装

git自动安装

 

配置好git我们继续配置Gradle,一样简单,起个别名,勾上自动安装,选择Gradle的版本。

 

gradle自动安装

 

至此,jenkins就安装配置完成了。关于具体如何使用jenkins进行自动发布,可以参考本人另一篇文章linux服务器中Jenkins集成git、Gradle持续构建Springboot项目。

七. 生成SSHKey

这里再补充一章说明如何生成SSHKey。容器从github上面下载代码的时候需要用到。因为咱们这个Jenkins是基于docker的,不是直接安装在服务器上,这里有很大的不同。

要生成容器的SSHKey,首先要先进入容器

docker exec -it jenkins /bin/bash

进入容器后生成sshkey

ssh-keygen -t rsa -C "123@qq.com"

生成sshkey

在容器内输入exit离开容器,使用如下命令获取公钥

tail /var/lib/docker/volumes/jenkins/_data/.ssh/id_rsa.pub

获取SSHKey公钥

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/386737.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小程序 setData 中的坑,其实好像...

最近这段时间在写微信小程序,有一个页面需要动态修改 data 中的数据,而这里似乎是个坑。 1、正常修改 正常修改很简单,当触发 change 事件时,数据和页面都会同时发生改变。这个也不用多说,很简单的例子。 2、如何修改对…

CentOS HarBor安装与配置

HarBor 安装与配置 Prerequisites for the target host ResourceCapacityDescriptionCPUminimal 2 CPU4 CPU is preferredMemminimal 4GB8GB is preferredDiskminimal 40GB160GB is preferred 环境 centos7harbor v1.6.3python v2.7及以上docker v1.10及以上docker-compose …

phpstudy如何安装景安ssl证书 window下apache服务器网站https访问

1. 下载景安免费证书 https://www.zzidc.com/help/helpDetail?id555 2.文件解压上传至服务器,位置自己决定 3. 调整apache配置 景安原文链接:https://www.zzidc.com/help/helpDetail?id555 ① 确保你的apache编译了ssl模块,这是支持ssl证书…

docker下gitlab安装配置使用(完整版)

docker下gitlab安装配置使用(完整版) 22018.12.16 00:07:57字数 737阅读 17595 docker 安装gitlab以及使用 一、安装及配置 1.gitlab镜像拉取 # gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本 $ docker pull gitlab/gitlab-ce拉取镜像 2.运行g…

企业级应用,如何实现服务化一(项目架构演化)

1.企业级应用架构演化 1.1.架构演化图 1.2.文字描述 #单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本#垂直应用架构当访问量逐渐增大,单一应用增加机器带来的加速度越来越小&#xff0c…

readonly的用法

转载于:https://www.cnblogs.com/w123w/p/10958567.html

Jenkins发布spring boot到hub.Docker 方法

在生成的目录下,建立个文件,文件名称为:Dockerfile FROM java:8 VOLUME /tmp ADD target/assignment-0.0.1-SNAPSHOT.jar /dalaoyang.jar ENTRYPOINT ["java","-Djava.security.egdfile:/dev/./urandom","-jar&q…

网页视频直播、微信视频直播技术解决方案:EasyNVR与EasyDSS流媒体服务器组合之区分不同场景下的直播接入需求...

背景分析 熟悉EasyNVR产品的朋友们都知道,EasyNVR不仅可以独成体系,而且还可以跟其他系列产品相配合,形成各种不同类型的解决方案,满足各种不同应用场景的实际需求。针对很多设备现场没有固定公网IP,但是又想实现公网、…

如何解决VMware Workstation 10.0.0 build-1295980马赛克现象

VMware Workstation 10.0.0 build-1295980偶尔出现客户机马赛克现象,可切换至其它选项卡,再切换回去即可。 还有一种方式是关闭加速3D图形。 转载于:https://www.cnblogs.com/rms365/p/10961499.html

不同账号间的云资源授权方法

阿里云的访问控制RAM产品可以实现资源的分配和授权,在一个特殊的业务背景下,资源也可以实现跨账号的授权使用. 背景: 1.A公司,作为甲方Party A,出资购买云资源,对云资源具有所有权,但不实际管理,需要乙方配合. 2.B公司,作为乙方Party B,要管理A公司的云资源,需要A公司授权云资…

知乎上已获千赞,持续更新中

前言 不知不觉自己已经做了几年开发了,由记得刚出来工作的时候感觉自己能牛逼,现在回想起来感觉好无知。懂的越多的时候你才会发现懂的越少。 如果你的知识是一个圆,当你的圆越大时,圆外面的世界也就越大。 最近看到很多Androi…

centos下搭建Jenkins持续集成环境(安装jenkins)

centos下搭建Jenkins持续集成环境(安装jenkins) 1、安装JDK yum install -y java 2、安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装。 1 wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo 2 rpm --import h…

离开小厂进大厂的第一周,BTAJ大厂最新面试题汇集,面试总结

大佬带你走进Android开发的世界,掌握了这些知识点,学习Android也可以很轻松。 核心分析内容 对于怎么学习Android,主要解决的是3个问题:学什么、怎么学 & 怎么用。 具体如下: 下面,我将带着上述几个问…

程序员35岁真的是分水岭吗?小白也能看明白

前言 今天我给大家再次分享一下,我最近的一些读书的感想,思考起来,确实能够给自己带来一些真实的帮助和启发,希望大家在平时的工作学习中,也能够认清楚学习的一些本质。 如果我们的学习是在不断掌握应对具体工作场景…

远程桌面最新漏洞CVE-2019-0708 POC利用复现

POC有点鸡肋,并没有蓝屏!!! POC运行环境: Python 3.5.6 |Anaconda 4.2.0 (64-bit)| (default, Aug 26 2018, 16:05:27) [MSC v.1 900 64 bit (AMD64)] on win32 依赖包及POC下载地址: 链接:http…

程序员如何技术划水,手把手教你写Android项目文档,绝对干货

安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS。 但是,到了各大厂商手里,改源码、自定…

spring cloud各个微服务打包到docker容器内

日常你所启动的微服务比如这样的 java -jar eureka-0.0.1-SNAPSHOT.jar --server.port41578 --spring.profiles.activelocal 然后想把它给整Docker里玩玩 首先要在打包好的Spring Boot同级目录下,建立一个Dockerfile 然后在这个文件下写上以下内容,大致的意思上从…

程序员如何自我学习和成长?深度好文

前言 工欲善其事必先利其器!在现代IT中,每个Android程序员都需要最好的工具来提高他们的技能和效率。在Android应用程序开发这个残酷的竞争行业中,只有优秀的程序员才能生存下去。你需要向客户展示你拥有的最佳技术和能力。 不仅仅是展示你的设备以吸引…

程序员必看!Android面试10大知识点总结宝典助你通关!年薪50W

起由 搞了7年多Android了,前阵子面试了一家不大不小的公司。公司不大,面试官架子还不小,一副目中无人高高在上的样子,搞得好像我一万个想进他们公司、我进不了他们公司我全家都得喝西北风一样。搞得我是真的郁闷:现在…

Odoo免费开源企业信息化平台助力企业成功

企业信息化变革之路 信息孤岛的真实由来 打开百度App,看更多图片左边为当下企业现状,右边为Odoo的整体 企业信息孤岛的严重性,来自于企业的自身高速发展,企业以销售为生命主题围绕着客户会搭建一系列相关的信息化系统,…