jenkins使用

Jenkins发送测试报告

雨燕双飞 提交于 2019-12-04 07:53:25
邮件全局配置 邮件插件:Email Extension Plugin 功能:发送邮件 邮件全局配置:jenkins--系统管理--系统配置:截图: 配置说明: 系统管理员邮件地址:必须配置,配置后邮件将由该邮件地址发出。该邮箱必须开启SMTP SMTP server :邮件的smtp服务器:163邮箱为:smtp.163.com Default user E-mail suffix:邮箱的后缀 高级-勾选使用smtp邮箱认证,输入邮箱用户名以及邮箱的密码 勾选SSL 端口:465 编码UTF-8 Default Content Type:选择HTML Default Recipients:默认接收邮件的邮箱地址 Default Subject:构建通知:$PROJECT_NAME - Build #$BUILD_NUMBER - $BUILD_STATUS! Default Content:邮件模板可自行配置: <hr/><metacharset="utf-8">(本邮件是程序自动下发的,请勿回复!)<br/><hr/>项目名称:$PROJECT_NAME<br/><hr/>构建编号:$BUILD_NUMBER<br/><hr/>构建状态:$BUILD_STATUS<br/><hr/>触发原因:${CAUSE}<br/><hr/>构建日志地址:<ahref="${BUILD_URL

基于 Jenkins Pipeline 自动化部署

强颜欢笑 提交于 2019-12-04 05:25:59
最近在公司推行Docker Swarm集群的过程中,需要用到Jenkins来做自动化部署,Jenkins实现自动化部署有很多种方案,可以直接在jenkins页面写Job,把一些操作和脚本都通过页面设置,也可以在每个项目中直接写Pipeline脚本,但像我那么优秀,那么追求极致的程序员来说,这些方案都打动不了我那颗骚动的心,下面我会跟你们讲讲我是如何通过Pipeline脚本实现自动化部署方案的,并且实现多分支构建,还实现了所有项目共享一个Pipeline脚本。 使用Jenkins前的一些设置 为了快速搭建Jenkins,我这里使用Docker安装运行Jenkins: $ sudo docker run -it -d \ --rm \ -u root \ -p 8080:8080 \ -v jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ -v "$HOME":/home \ --name jenkins jenkinsci/blueocean 初次使用jenkins,进入Jenkins页面前,需要密码验证,我们需要进入docker容器查看密码: $ sudo docker exec -it jenkins /bin/bash $ vi /var/jenkins_home

Jenkins 有关 Maven 的内容

↘锁芯ラ 提交于 2019-12-04 04:32:28
Jenkins Maven 插件安装 在安装完 Jenkins 后,我们想添加新的项目 为 Maven 项目时,发现找不到这个选项。 原因是我们没有安装插件 Maven Integration . 在 插件管理 安装 插件 Maven Integration 然后我们就可以新添加 Maven 项目了。 Jenkins Maven 配置国内源(阿里云) Maven 我们安装过后默认使用的 国外的源,在拉取一些文件的时候都会比较慢,我们可以设置为国内 阿里云的源。这样整个拉取的速度会快很多。 修改${maven.home}/conf或者${user.home}/.m2文件夹下的settings.xml文件,在 标签下加入上述内容即可。 <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> Jenkins Maven 清除缓存 Maven 工程默认下载jar包的路径: /var/lib/jenkins/.m2/repository 我们运行 jenkins 用户是 weini ,也就是 清除 : /home/weini/

devops-jenkins部署和基本使用

家住魔仙堡 提交于 2019-12-03 20:21:25
1. jenkins部署和基本使用 1.1) 先关闭centos 7的自带防火墙和selinux [root@test-2 ~]# /bin/systemctl stop firewalld [root@test-2 ~]# /bin/systemctl disable firewalld [root@localhost ~]# getenforce #查看selinux是否开启 Enforcing #enforcing表示selinux开启的, [root@test-2 ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config #修改配置文件,需要重启才后永久关闭 [root@test-2 ~]# setenforce 0 #临时关闭selinx [root@test-2 ~]# getenforce #查看是否关闭 Disabled 1.2) 下载jenkins官方包安装   jenkins官方下载地址: http://pkg.jenkins.io/      点击红色下载地址进入    1.3) 安装jdk的java应用程序 [root@jenkins ~]# yum install -y java-1.8.0 1.4) 验证jdk是否正常 [root@jenkins ~]# java

使用Docker搭建开发环境,包括(nginx,redis,mysql,gitlab,nexus3,activemq,jenkins)

十年热恋 提交于 2019-12-03 16:35:06
使用Docker搭建开发环境 自从玩了Docker,深深的被Docker迷住,做了这么多年软件,都没想到软件会发展到这种阶段,使用容器隔离技术,将各个服务进程隔离。 记录一下自己为新成立的部门使用Docker搭建开发环境的过程,这里只是简粗暴的记录下执行命令,方便以后review,等有时间了,再详细介绍。 nginx mkdir -p /apps/nginx/www /apps/nginx/logs /apps/nginx/conf docker pull nginx docker run -p 80:80 --name nginx -v /apps/nginx/www:/www -v /apps/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /apps/nginx/logs:/etc/nginx/logs -d nginx redis mkdir -p /apps/redis/data #写入redis默认配置 vim /apps/redis/redis.conf docker pull redis docker run -p 6379:6379 -v /apps/redis/data:/data -v /apps/redis/redis.conf:/etc/redis.conf -d --name redis redis

DEVOPS技术实践_15:使用Docker作为Jenkins的slave

徘徊边缘 提交于 2019-12-03 15:24:27
前面实验了使用docker搭建一个jenkins,下面实验使用docker作为jenkins的slave节点 1. 环境准备 一个运行Docker的主机或者群集 Jenkins应该能访问互联网,方便安装插件。 Jenkins服务器能够和GitHub通信。 Jenkinss对Java所需要的Git,和Maven配置应该配置好。 一个Jenkins master. 2. 在Docker主机上开启远端的访问API 此处针对Docker 18.03 /etc/docker/daemon.json会被docker.service的配置文件覆盖,直接添加daemon.json不起作用。可以有如下几种设置: 直接编辑配置文件:Centos中docker daemon配置文件在/lib/systemd/system/docker.service,找到以下字段,在后面添加如下,注意,此处不能用”fd://”,否则报错 [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com BindsTo=containerd.service After=network-online.target firewalld.service containerd.service Wants

在jenkins中使用shell命令推送当前主机上的docker镜像到远程的Harbor私有仓库

不羁的心 提交于 2019-12-03 14:25:32
1.jenkins主机上的docker配置 先在Jenkins主机的docke上配置上Harbor私有仓库地址 cat /etc/docker/daemon.json { "insecure-registries": ["https://192.168.75.12"] } 然后手动输入如下命令登陆进行测试: docker login http://192.168.75.12 # 输入账号密码 # 第一次登陆成功后,会把账号信息存储到文件中/root/.docker/config.json,下次再登陆的时候就不用输入账号和密码了 2. jenkins配置 报错信息: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.40/auth : dial unix /var/run/docker.sock: connect: permission denied 分析: jenkins操作界面的shell命令使用的用户是jenkins用户,但是需要访问到docker的文件,没有相关权限造成的,采用最简单的办法,修改相关文件的权限

使用Jenkins构建Docker镜像 --SpringCloud

不想你离开。 提交于 2019-12-03 13:44:58
前提意义: SpringCloud微服务里包含多个文件夹,拉取仓库的所有代码,然后过根据选项参数使用maven编译打包指定目录的jar,然后再根据这个目录的Dockerfile文件制作Docker镜像 1. SpringCloud项目结构 注意Dockerfile文件的位置,跟src和pom.xml同级,后面会用到这个文件,若不同级,后面选择Dockerfile文件的时候需要酌情修改,就是使用环境变量的那几个地方 Git仓库是整个项目,但是根据选项参数只编译打包spring-cloud-eureka-server-demo文件夹 2. Docker配置 开启远程访问: vim /lib/systemd/system/docker.service # 添加下面这行 ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock systemctl daemon-reload systemctl docker restart 配置国内163源: vim /etc/docker/daemon.json { "registry-mirrors": ["http://hub-mirror.c.163.com"] } 3. Jenkins配置 安装docker插件 系统管理---系统设置---云

通过jenkins api 触发远程构建

百般思念 提交于 2019-12-03 13:31:38
原文链接(针对用到的构建部分稍作了补充): https://segmentfault.com/a/1190000018939447 Jenkins 是一款流行的开源持续集成工具,可以用来做一些软件开发的自动化工作,如打包,测试,自动部署等。 Jenkins 中有 view 和 job 的概念, view 相当于组, job 则是具体的任务。 view 下面可以创建 job ,但 job 可以不在任何 view 下。 这里主要介绍 Jenkins 提供的 HTTP API ,至于如何使用 Jenkins 请参看 Jenkins User Documentation 。 API 鉴权 Jenkins 使用 Baisc Auth 的权限验证方式,需要传入 username 和 api token 。 其中 api token 需要在用户的设置界面去创建。具体见下面截图引导: 但在 Job 的远程触发中,可以设置用于远程触发的 token (在 Job 的配置页面设置),这样在触发 Job 时就不需要传入 Basic Auth 了。以下是在job中创建token的图示: 远程触发的 token 使用 urlencode 的方式放在请求的 body 中,其原始数据为: token=<Token Value> 下面给出两种方式触发 Job 的例子: Basic Auth curl -X

从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布

纵然是瞬间 提交于 2019-12-03 13:19:41
从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布 笔者: @拿着保温瓶的年轻人 目录: 一、前言 二、发布流程 三、环境准备 四、部署思路梳理 五、三台机器上操作 六、Git机器上操作 七、Docker机器上操作 八、Jenkins机器上操作 九、上传JAVA项目代码到Git仓库 十、Jenkins发布测试 十一、后面再废话两句 正文: 一、前言 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。 Jenkins是一个广泛用于持续构建的可视化Web工具,持续构建就是将项目自动化编译、打包、部署。通过规范化来完成,简单,繁琐,浪费时间的重复工作。 Jenkins名言: 构建伟大,无所不能! Jenkins用户手册传送门: https://jenkins.io/zh/doc/ 二、发布流程 工作详细流程: 三、环境准备 服务器角色 IP地址 主机名 运行服务 系统版本 Jenkins/Docker 192.168.115.21 jenkins 安装Docker、Tomcat运行Jenkins、Git客户端、JDK、Maven CentOS 7.4 Git/Registry 192.168.115.22 git