1.环境说明:

jenkins+svn:192.168.71.142

测试环境:192.168.71.145

生产环境:192.168.71.148

操作系统:centos7.
Maven3.
Tomcat8
JDK1.
Jenkins2.
Docker CE 17.06

2.SVN安装配置及简单使用:

# yum -y install subversion
# mkdir /home/svn
# svnadmin create /home/svn/repos
# vi /home/svn/repos/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
# vi /home/svn/repos/conf/passwd
[users]
test =
# vi /home/svn/repos/conf/authz
[repos:/]
test = rw
# svnserve -d -r /home/svn
仓库地址:svn://192.168.71.142/repos

就可以输入仓库地址了svn://192.168.71.142/repos

用户名:test

密码:123456

3.Docker镜像仓库搭建

 docker run -d \
-v /opt/registry:/var/lib/registry \
-p : \
--restart=always \
--name registry \
registry
在部署节点配置Docker可信任私有仓库:
# vim /etc/docker/daemon.json
{"registry-mirrors": ["http://04be47cf.m.daocloud.io"],"insecure-registries":["192.168.71.142:5000"]}
systemctl daemon-reload
systemctl restart docker
上传基础镜像到私有仓库:
# docker build -t 192.168.71.142:/lnmp-nginx:base .
# docker build -t 192.168.71.142:/lnmp-php:base .
# docker push 192.168.71.142:/lnmp-nginx:base
# docker push 192.168.71.142:/lnmp-php:base

4.部署节点安装Docker与Docker-Compose及配置普通用户sudo

.安装Docker-ce
#去百度查docker-ce安装
.安装Docker-Compose
# curl -L https://github.com/docker/compose/releases/download/1.14.0/docker-compose-`uname -s`-`uname -m` -o
/usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
.赋予用户sudo权限
# vi /etc/sudoers
user ALL=(ALL) NOPASSWD:ALL

5.Jenkins安装

安装包下载:
http://mirrors.jenkins.io/war-stable/
http://maven.apache.org/download.cgi
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
配置JDK和Maven环境变量:
# tar zxvf jdk-8u45-linux-x64.tar.gz
# mv jdk1..0_45 /usr/loca/jdk.
# tar apache-maven-3.5.-bin.tar.gz
# mv apache-maven-3.5. /usr/local/maven3.
# vim /etc/profile
JAVA_HOME=/usr/local/jdk1.
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
MAVEN_HOME=/usr/local/maven3.
PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
export JAVA_HOME CLASSPATH MAVEN_HOME PATH
# tar zxvf apache-tomcat-8.0..tar.gz
# cd apache-tomcat-8.0./webapps
# rm -rf ./*
# unzip /root/jenkins.war -d ROOT
# ../bin/startup.sh

6.Jenkins基本配置与创建项目

系统管理->系统设置:主要配置workspace目录,全局环境变量,邮件通知,其他插件配置等。

系统管理->Global Tool Configuration:主要配置JDK、Maven等工具。

在系统设置里面先配置好SSH连接各个部署节点信息,在创建项目中使用。

7.jenkins基础配置

Remote directory工作目录

Exec command需要执行的命令或者脚本

Docker结合Jenkins构建持续集成环境的更多相关文章

  1. Docker 结合Jenkins 构建持续集成环境

    Docker 结合Jenkins  构建持续集成环境 Jenkins : 一个开源的持续集成工具, 提供软件版本发布.自动测试等一系列流程及丰富的插件 Maven: 一个自动化构建工具, 通过一段描述 ...

  2. 使用Jenkins构建持续集成环境

    简介 Jenkins是一个开源的持续集成工具,提供了数百种插件供用户选择,能够完成整套持续集成环境的构建. 它具有如下的特点: 持续集成和持续发布 作为可扩展的自动服务器,Jenkins可以作为简单的 ...

  3. 用MSBuild和Jenkins搭建持续集成环境(2)

    http://www.infoq.com/cn/articles/MSBuild-2   作者 Mustafa Saeed Haji Ali ,译者 李剑 发布于 2012年10月23日 | 注意:  ...

  4. RF+Jenkins构建持续集成

    引入RF是为了能够快速的开展自动化验收测试,Jenkins而一种持续集成工具,用于监控持续重复的工作,持续的软件版本发布/测试项目,而通过RF+Jenkins可以有利的对RF构建的接口项目进行持续集成 ...

  5. 使用jenkins构建持续集成平台

    jenkins +   Maven + svn/git + tomcat 的持续集成平台 项目管理流程: 需求分析----原型设计----开发代码----提交测试-----内部测试-----确认上线( ...

  6. 使用Jenkins+Docker+Gitlab+Maven搭建持续集成环境

    继使用Docker搭建Gitlab后 大致的步骤如下: 开发人员通过IDE工具(IntelliJ IDEA)将代码推送到gitlab. jenkins从gitlab中获取到源码,并使用maven编译. ...

  7. Jenkins + svn + maven 构建持续集成环境搭建

    Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...

  8. 用MSBuild和Jenkins搭建持续集成环境(1)

     http://www.infoq.com/cn/articles/MSBuild-1 你或其他人刚刚写完了一段代码,提交到项目的版本仓库里面.但等一下,如果新提交的代码把构建搞坏了怎么办?万一出现编 ...

  9. 用MSBuild和Jenkins搭建持续集成环境(1)[收集]

    你或其他人刚刚写完了一段代码,提交到项目的版本仓库里面.但等一下,如果新提交的代码把构建搞坏了怎么办?万一出现编译错误,或者有的测试失败了,或者代码不符合质量标准所要求的底限,你该怎么办? 最不靠谱的 ...

随机推荐

  1. shell 里的正则

    #!/bin/bash variable="This is a fine mess." echo "$variable" # Regex matching wi ...

  2. OUC_Summer Training_ DIV2_#7 718

    是18号做的题啦,现在才把报告补上是以前不重视报告的原因吧,不过现在真的很喜欢写报告,也希望能写一些有意义的东西出来. A - Dragons Time Limit:2000MS     Memory ...

  3. 提交本地文件至gitlab已有的项目中(更新gitlab)

    gitlab代码更新 gitlab官网 1.安装git git官网 官网下载安装,安装过程一直next即可(路径自己选) 2.clone至本机 格式:git clone url(可转到指定目录克隆) ...

  4. APP消息推送是否进入消息中心和click、receive事件分析

    前端时间研究APP消息推送的机制,由于机型.版本的碎片化,消息推送的机制不太好理解,所以总结下,放在博文里以备后续查阅. 安卓Android系统的消息推送:     安卓 推送方式 应用状态 类型 消 ...

  5. article收藏

    sca https://github.com/spring-cloud-incubator/spring-cloud-alibaba spring-cloud-document https://git ...

  6. DOS 获取硬盘序列号

    DOS命令行操作: 使用diskpart命令,Win+R键运行cmd,进入命令行界面:       1.diskpart       2.list disk 查看有几块硬盘       3.selec ...

  7. 如何用MATLAB GUI创建图形用户界面

    MATLAB是众多理工科学生及工程师经常使用的一款数学软件,除了可以实现数据处理,矩阵运算.函数绘制等功能外,MATLAB还可以实现图形用户界面的设计. 下面介绍如何让小白也能用GUI创建最基本的用户 ...

  8. <HTML>在一个表格内嵌套另一个表格时,如何居中?

    在一个表格内嵌套另一个表格时,如何居中? 假设大表格为: <table id="tableRow"> <tr> <th>City</th& ...

  9. 表的操作管理和 MySQL 的约束控制

    一.表的操作 1.表的基本概念 数据库与表之间的关系:数据库是由各种数据表组成的,数据表是数据库中最重要的对象,用来存储和操作数据的逻辑结构. 表由列和行组成,列是表数据的描述,行是表数据的实例. 表 ...

  10. java基础内存基础详解

    堆区: 1.存储的全部是对象,每个对象都包含一个与之对应的class的信息.(class的目的是得到操作指令) 2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对 ...