zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    【LeetCode】150.逆波兰表达式(栈+数组 两种方法,java实现)
    【LeetCode】494. 目标和(枚举,动规,背包三种方法,java实现)
    【LeetCode】137.克隆图(dfs+bfs,java实现)
    java 面向对象(十二):面向对象的特征二:继承性 (一) 前言
    链表常用操作
    回溯法—八皇后问题
    回溯法—实例
    回溯法—子集树与排列树
    使用sklearn进行集成学习——实践
    使用sklearn进行集成学习——理论
  • 原文地址:https://www.cnblogs.com/hixiaowei/p/9396650.html
Copyright © 2011-2022 走看看