openshift 持续集成与部署 -- 构建部署流水线
Jenkins持续构建说得更直白点,就是各种项目的"自动化"编译、打包、分发部署。j跟svn、git能无缝集成,也支持直接与知名源代码托管网站,比如github、bitbucket直接集成。
简单点说,Jenkins其实就是大的框架集!
如:自动化,性能,打包,部署,发布&发布结果自动化验证,接口测试,单元测试
1.创建项目和mybank应用
oc login -u dev -p dev
oc new-project mybank-dev --display-name="MyBank DEV" --description=" mydev"
oc new-app openshift/wildfly-100-centos7~https://github.com/nichochen/mybank-demo-maven
oc status
oc get build -n mybank-dev
oc expose svc/mybank-demo-maven --hostname=mybank-dev.apps.example.com
curl http://mybank-dev.apps.example.com
oc new-project mybank-sit --display-name="MyBnak SIT" --description="mybank sit"
oc new-project mybank-release --display-name="MyBnak RELEASE" --description="mybank release"
2.配置Jenkins的访问权限
oc policy add-role-to-user edit system:serviceaccount:ci:jenkins -n mybank-dev
oc policy add-role-to-user edit system:serviceaccount:ci:jenkins -n mybank-sit
oc policy add-role-to-user edit system:serviceaccount:ci:jenkins -n mybank-release
oc policy add-role-to-user edit system:image-pullersystem:serviceaccount:mybank-sit:jenkins -n mybank-dev
oc policy add-role-to-user edit system:image-pullersystem:serviceaccount:mybank-release:jenkins -n mybank-dev
3.应用测试环境的镜像
oc tag mybank-dev/mybank-demo-maven:latest mybank-sit/mybank-demo-maven:latest
oc project mybank-sit
oc new-app -i mybank-demo-maven:latest
oc project mybank-release
oc tag mybank-sit/mybank-demo-maven:latest mybank-release/mybank-demo-maven:stage
oc new-app -i mybank-demo-maven:stage -n mybank-release
curl mybank-demo-maven.mybank-dev.svc.cluster.local:8080
4.OpenShift流水线
vim /etc/profile
source /etc/profile
oc login -u system:admin
oc create -f https://raw.githubusercontent.com/openshift/origin/master/examples/image-streams/image-streams-centos7.json -n openshift
oc login -u dev -p dev
oc new-project pipeline-demo
oc new-app --template=jenkins-ephemeral --param=JENKINS_PASSWORD=welcome1
oc new-app --template=jenkins-ephemeral -e JENKINS_PASSWORD=welcome1
oc new-app -f https://raw.githubusercontent.com/openshift/origin/master/examples/jenkins/pipeline/samplepipeline.json
oc new-app -f https://raw.githubusercontent.com/openshift/origin/master/examples/jenkins/pipeline/samplepipeline.yaml
oc get pods
oc describe pod mongodb-1-9frq2
oc get pods
oc get bc
oc describe bc sample-pipeline
oc start-build sample-pipeline
oc get pods
oc get project
oc get pods -n pipeline-demo
oc describe pod nodejs-4z1t9
oc get pods -n pipeline-demo
openshift 持续集成与部署 -- 构建部署流水线的更多相关文章
- 持续集成之Jenkins自动部署war包到远程服务器
一.无war包链接的情况 无war包链接时,需先下载war包到本地,然后执行: ---------------------------------------------以下部分为转载-------- ...
- 持续集成环境--Tomcat热部署导致线程泄漏
一.问题由来 我们组用jenkins部署了持续集成环境,(jenkins部署war包到远程服务器的tomcat). 每次提交了代码,jenkins上一键构建,就可以自动拉取最新代码,打war包,热部署 ...
- (持续集成)win7上部署Jenkins+MSBuild+Svn+SonarQube+SonarQube Scanner for MSBuild (一)
一.Jenkins介绍 jenkins是一个广泛用于持续构建的可视化web工具,持续构建说得更直白点,就是各种项目的”自动化”编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:java ...
- 【持续集成】jenkins安装部署从git获取代码
一:持续集成的概念: 1.1:总体的概括 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 1. ...
- 用Jenkins+Gradle+Jetty实现持续集成、测试、部署
自动集成有很多种方案,本例用到的工具是Jenkins(前身Hudson)+Gradle+Jetty,关于Gradle可参考上一篇,Gradle常见问题. 本例项目名称: WAP Jetty 安装Jen ...
- Jenkins与Git持续集成&&Linux上远程部署Java项目
一.环境搭建 1.安装所需软件 Jdk Maven Jenkins Tomcat Xshell git 以上软件去官网下载,比较简单,不一一描述了 2.安装所需的jenkins插件 Git plugi ...
- (持续集成)win7上部署Jenkins+MSBuild+Svn+SonarQube+SonarQube Scanner for MSBuild (第二发)
这一篇进入实战,走起.... 登录jenkins,如下图 点击上图中的“新建”按钮,进入下图 输入项目名称,选择“构建一个自由风格的软件项目”即可,点击“ok”,跳转到下图 svn源代码管理(选择代码 ...
- [ansible-playbook]4 持续集成环境之分布式部署利器 ansible playbook学习
3 ansible-play讲的中太少了,今天稍微深入学习一点 预计阅读时间:15分钟 一: 安装部署 参考 http://getansible.com/begin/an_zhuang_ansile ...
- [Docker][ansible-playbook]3 持续集成环境之分布式部署
预计阅读时间: 30分钟 本期解决痛点如下:1. 代码版本的多样性,编译环境的多样性如何解决?答案是使用docker,将不同的编译环境images统统打包到私有仓库上,根据需求进行下载,从宿主机上挂载 ...
随机推荐
- HTML meta标签总结,HTML5 head meta属性整理
原文链接:http://caibaojian.com/mobile-meta.html <!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 -- ...
- Redis在windows下安装过程(转载)
转载自(http://www.cnblogs.com/M-LittleBird/p/5902850.html) 一.下载windows版本的Redis 官网以及没有下载地址,只能在github上下载, ...
- Attack Top Chunk之 bcloud
前言 这是 bctf 2016 的题,链接 https://github.com/ctfs/write-ups-2016/tree/master/bctf-2016/exploit/bcloud-20 ...
- Android自定义View探索—生命周期
Activity代码: public class FiveActivity extends AppCompatActivity { private MyView myView; @Override p ...
- pageHelper插件
mybatis的分页插件使用总结 环境准备工作: 1.在使用pagehelper插件时,我已经搭建好了ssm(spring+springmvc+mybatis) 在这简单描述一下ssm搭建过程 ...
- 在 Azure 中的 Linux 虚拟机上使用 SSL 证书保护 Web 服务器
若要保护 Web 服务器,可以使用安全套接字层 (SSL) 证书来加密 Web 流量. 这些 SSL 证书可存储在 Azure Key Vault 中,并可安全部署到 Azure 中的 Linux 虚 ...
- mysql(5.7.17)字符集设置(character_set/collation)
0 查看字符集(character_set/collation) use information_schema;desc tables; --一定记住tables表,information_sc ...
- [控件] LabelView
LabelView 此LabelView是用来将Label显示在固定的View上的,需要计算Label的高度与宽度. 源码: NSString+StringHeight.h 与 NSString+St ...
- Linux /dev/null详解
常用的命令展示 /dev/null 和 /dev/zero的区别 1./dev/null:表示 的是一个黑洞,通常用于丢弃不需要的数据输出, 或者用于输入流的空文件 ...
- Ubuntu下安装指定版本的mysql
1.编辑/etc/apt/sources.list和/etc/apt/sources.list.save, 手动加上deb http://archive.ubuntu.com/ubuntu trust ...