jenkins+svn+脚本实现CIDI

使用vmware分配三台机:

普通测试环境(镜像仓库和jenkins):192.168.193.101 hostname:jenkins-svn

预发布环境(正式测试环境):192.168.193.102 hostname:test

生产环境:192.168.193.103 hostname:prod

改网卡:vim /etc/sysconfig/network-scripts/ifcfg-ens33

改主机名:hostnamectl  set-hostname jenkins-svn;hostname jenkins-svn

1、普通测试环境上搭建好镜像仓库,安装和配置好svn,安装jdk和jenkins,docker-ce和docker-compose也需要安装。可以用jenkins可以使用yum安装,也可以用rpm和war包安装,jdk也可以是用tar.gz或者yum安装,svn直接使用yum安装。

docker-ce需要先更新国内的源(看容器特殊命令)

安装好docker-ce和docker-compose

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

sudo yum makecache fast

yum install -y docker-ce docker-compose && systemctl start docker && systemctl enable docker

1.1、安装SVN服务

yum -y install subversion 

1.2、新建SVN目录

mkdir /var/svn -p

1.3、创建SVN仓库名为repos

svnadmin create /var/svn/repos

1.4、修改repos库内主配置文件(注意配置文件每行顶格不能有空格,否则连接svn时会报错)

vim /var/svn/repos/conf/svnserve.conf

# none设置不允许匿名访问

anon-access = none

# 认证为可写

auth-access = write

# 密码数据库文件为passwd

password-db = passw

# 认证数据库文件为authz

authz-db = authz 

1.5、修改passwd文件 添加用户

vim /var/svn/repos/conf/passwd

# 用户管理[users]

# 用户名为test。密码123456。

test = 123456 

1.6、修改authz文件 赋值创建用户权限

vim /var/svn/repos/conf/authz

# 创建仓库目录“/”权限

[repos:/]

# 赋值test 读写权限

test = rw 

1.7、启动SVN服务

systemctl start/enable svnserve 添加开机启动

注:仓库地址 svn://192.168.193.101/repos

1.8、Jenkins安装yum

先安装jdk yum install -y java

java -version

先导入仓库

wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins.io/redhat-stable/jenkins.repo

rpm --import http://pkg.jenkins.io/redhat-stable/jenkins.io.key

下载较慢,直接导入rpm包进行安装,使用预先下载好的jenkins-2.190.3-1.1.noarch.rpm包,在代码和资料附件中。

安装

yum install -y jenkins-2.190.3-1.1.noarch.rpm

systemctl enable jenkins && systemctl start jenkins

netstat -lntp

浏览器访问:http://192.168.193.101:8080

2、测试好镜像仓库,push和pull(看docker私有仓库registry搭建) 

  docker tag  registry:latest  192.168.193.101:5000/registry:v1

  docker push 192.168.193.101:5000/registry

  curl   http://192.168.193.101:5000/v2/_catalog
  curl    http://192.168.193.101:5000/v2/registry/tags/list
   docker pull 192.168.193.101:5000/registry:v1

3、做好svn和Jenkins各项配置,并测试

连接svn测试

jenkins+svn+脚本实现CIDI_第1张图片

jenkins+svn+脚本实现CIDI_第2张图片

jenkins+svn+脚本实现CIDI_第3张图片

jenkins+svn+脚本实现CIDI_第4张图片

jenkins+svn+脚本实现CIDI_第5张图片

jenkins+svn+脚本实现CIDI_第6张图片

jenkins安装好插件

jenkins+svn+脚本实现CIDI_第7张图片

jenkins+svn+脚本实现CIDI_第8张图片

做好系统配置

jenkins+svn+脚本实现CIDI_第9张图片

jenkins+svn+脚本实现CIDI_第10张图片

jenkins+svn+脚本实现CIDI_第11张图片

新建任务

jenkins+svn+脚本实现CIDI_第12张图片

jenkins+svn+脚本实现CIDI_第13张图片jenkins+svn+脚本实现CIDI_第14张图片

jenkins+svn+脚本实现CIDI_第15张图片

jenkins+svn+脚本实现CIDI_第16张图片

jenkins+svn+脚本实现CIDI_第17张图片

jenkins+svn+脚本实现CIDI_第18张图片

jenkins+svn+脚本实现CIDI_第19张图片

jenkins+svn+脚本实现CIDI_第20张图片

jenkins+svn+脚本实现CIDI_第21张图片

4、预发布环境安装好docker-ce和docker-compose,将代码放置到相应文件夹

测试第1和2步。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

sudo yum makecache fast

yum install -y docker-ce docker-compose && systemctl start docker && systemctl enable docker

预分布节点:部署测试环境包

4.1、下载测试部署压缩包

目录结构

├── config

# 生产环境配置文件│ ├── prod.html

│ ├── prod.tar.gz

# 测试环境配置文件│ ├── test.html

│ └── test.tar.gz

# 部署LNMP项目├── deploy.sh

# 编排描述内容

├── docker-compose.yml

# 构建镜像├── Dockerfile

│ ├── nginx

│ └── php

# 将容器目录数据库持久化到该目录下├── mysql_data

# 推送镜像到线上使用├── push_images.sh

# 记录部署时的代码版本号├── revision.svn

# 存放项目目录

└── wwwroot

4.2、解压文件,脚本加入执行权限,并查看相关文件信息

# 上传test.zip脚本,解压缩unzip lnmp.zip;cd lnmp

# 将脚本添加执行权限

chmod +x push_images.sh

5、生产环境安装好docker-ce和docker-compose,将代码放置到相应文件夹,测试第3和4步。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

sudo yum makecache fast

yum install -y docker-ce docker-compose && systemctl start docker && systemctl enable docker

5.1、下载生产部署压缩包

目录结构

├── deploy.sh

├── docker-compose.yml

├── revision.svn

└── roll-back.sh

5.2、解压文件,脚本加入执行权限,并查看想关文件信息

# 解压文件,进入路径下tar -zxvf lnmp.tar.gz

# 加入文件执行权限

chmod +x deploy.sh roll-back.sh

各个环境代码和软件包请看附件资料

参考资料:https://www.cnblogs.com/xiangsikai/p/10057087.html

Docker+Jenkins+Maven+SVN搭建持续集成环境

你可能感兴趣的:(jenkins,svn,CI,DI,脚本)