Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Nyob zoo sawv daws ntawm no blog! Qhov no yog qhov thib peb tshaj tawm nyob rau hauv ib tug series uas peb qhia yuav ua li cas rau deploy niaj hnub web applications ntawm Red Hat OpenShift.

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Hauv ob nqe lus dhau los, peb tau qhia yuav ua li cas siv cov ntawv thov web niaj hnub hauv ob peb kauj ruam thiab yuav ua li cas siv cov duab S2I tshiab nrog rau cov duab HTTP server sab nraud, xws li NGINX, siv chained tsim los orchestrate ntau lawm deployments. .

Niaj hnub no peb yuav qhia yuav ua li cas khiav ib qho kev loj hlob server rau koj daim ntawv thov ntawm OpenShift platform thiab synchronize nws nrog cov ntaub ntawv hauv zos, thiab kuj tham txog dab tsi OpenShift Pipelines yog dab tsi thiab lawv yuav siv li cas los ua lwm txoj hauv kev sib txuas.

OpenShift ua ib puag ncig kev txhim kho

Kev txhim kho kev ua haujlwm

Raws li twb tau hais hauv thawj ncej, cov txheej txheem kev txhim kho raug rau cov ntawv thov web niaj hnub no tsuas yog qee yam ntawm "kev txhim kho server" uas taug qab kev hloov pauv rau cov ntaub ntawv hauv zos. Thaum lawv tshwm sim, daim ntawv thov tsim tau tshwm sim thiab tom qab ntawd nws hloov kho rau qhov browser.

Hauv cov txheej txheem niaj hnub no feem ntau, xws li "kev txhim kho server" yog tsim rau hauv cov cuab yeej hais kom ua.

Piv txwv hauv zos

Ua ntej, cia saib seb qhov no ua haujlwm li cas thaum khiav daim ntawv thov hauv zos. Cia peb ua daim ntawv thov ua piv txwv React los ntawm cov kab lus dhau los, txawm hais tias yuav luag tib lub tswv yim kev ua haujlwm zoo ib yam siv rau hauv tag nrho lwm cov txheej txheem niaj hnub no.
Yog li, txhawm rau pib "dev server" hauv peb qhov piv txwv React, peb yuav nkag mus rau cov lus txib hauv qab no:

$ npm run start

Tom qab ntawd hauv lub davhlau ya nyob twg qhov rai peb yuav pom qee yam zoo li no:

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Thiab peb daim ntawv thov yuav qhib nyob rau hauv lub neej ntawd browser:

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Tam sim no, yog tias peb hloov pauv cov ntaub ntawv, daim ntawv thov yuav tsum hloov kho hauv browser.

OK, txhua yam yog qhov tseeb nrog kev txhim kho hauv hom hauv zos, tab sis yuav ua li cas kom ua tiav tib yam ntawm OpenShift?

Kev txhim kho server ntawm OpenShift

Yog tias koj nco qab, hauv yav dhau los ncej, peb tau saib ntawm lub sijhawm hu ua haujlwm ntawm S2I duab thiab pom tias los ntawm lub neej ntawd, qhov kev pabcuam pabcuam yog lub luag haujlwm rau kev pabcuam peb lub vev xaib.

Txawm li cas los xij, yog tias koj saib ze dua khiav tsab ntawv los ntawm qhov piv txwv ntawd, nws muaj $NPM_RUN ib puag ncig hloov pauv, uas tso cai rau koj ua tiav koj cov lus txib.

Piv txwv li, peb tuaj yeem siv nodeshift module los xa peb daim ntawv thov:

$ npx nodeshift --deploy.env NPM_RUN="yarn start" --dockerImage=nodeshift/ubi8-s2i-web-app

Nco tseg: Cov piv txwv saum toj no yog luv luv los qhia txog lub tswv yim dav dav.

Ntawm no peb tau ntxiv NPM_RUN ib puag ncig hloov pauv rau peb qhov kev xa tawm, uas qhia lub sijhawm ua haujlwm los khiav cov xov paj pib hais kom ua, uas pib React kev txhim kho server hauv peb OpenShift pod.

Yog hais tias koj saib ntawm lub cav ntawm ib tug khiav pod, nws yuav zoo li no:

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Tau kawg, tag nrho cov no yuav tsis muaj dab tsi txog thaum peb tuaj yeem synchronize cov lej hauv zos nrog cov lej, uas tseem raug saib xyuas rau cov kev hloov pauv, tab sis nyob rau ntawm cov chaw taws teeb tswj.

Synchronizing tej thaj chaw deb thiab hauv zos code

Hmoov zoo, nodeshift tuaj yeem pab tau yooj yim nrog synchronization, thiab koj tuaj yeem siv cov lus txib saib kom taug qab cov kev hloov pauv.

Yog li tom qab peb tau khiav cov lus txib kom xa cov neeg rau zaub mov txhim kho rau peb daim ntawv thov, peb tuaj yeem siv cov lus txib hauv qab no kom nyab xeeb:

$ npx nodeshift watch

Raws li qhov tshwm sim, kev sib txuas yuav raug ua rau lub pod khiav uas peb tau tsim ua ntej me ntsis, qhov synchronization ntawm peb cov ntaub ntawv hauv zos nrog cov chaw taws teeb yuav qhib, thiab cov ntaub ntawv ntawm peb lub hauv paus system yuav pib soj ntsuam rau kev hloov.

Yog li ntawd, yog tias peb tam sim no hloov kho cov ntaub ntawv src/App.js, lub kaw lus yuav hnov ​​​​mob rau cov kev hloov pauv no, luam lawv mus rau cov chaw taws teeb thiab pib cov neeg rau zaub mov txhim kho, uas yuav hloov kho peb daim ntawv thov hauv browser.

Txhawm rau ua kom tiav daim duab, cia peb qhia seb tag nrho cov lus txib zoo li cas:

$ npx nodeshift --strictSSL=false --dockerImage=nodeshift/ubi8-s2i-web-app --build.env YARN_ENABLED=true --expose --deploy.env NPM_RUN="yarn start" --deploy.port 3000

$ npx nodeshift watch --strictSSL=false

Cov lus txib saib yog qhov kev paub daws teeb meem nyob rau sab saum toj ntawm oc rsync hais kom ua, koj tuaj yeem kawm paub ntxiv txog nws ua haujlwm li cas no.

Qhov no yog ib qho piv txwv rau React, tab sis tib txoj kev tuaj yeem siv nrog lwm lub hauv paus, tsuas yog teeb tsa NPM_RUN ib puag ncig hloov pauv raws li qhov tsim nyog.
 

Openshift Pipelines

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Tom ntej no peb yuav tham txog lub cuab yeej zoo li OpenShift Pipelines thiab nws yuav siv li cas los ua lwm txoj hauv kev tsim chained.

OpenShift Pipelines yog dab tsi

OpenShift Pipelines yog huab-hais haiv neeg CI / CD kev sib koom ua ke txuas ntxiv thiab xa khoom tsim los tsim cov kav dej siv Tekton. Tekton yog qhov hloov pauv tau qhib-qhov Kubernetes-native CI / CD lub moj khaum uas tso cai rau koj los ua haujlwm rau kev xa mus rau ntau lub platform (Kubernetes, serverless, virtual machines, thiab lwm yam) los ntawm kev nthuav tawm los ntawm cov txheej txheem hauv qab.

Kev nkag siab txog kab lus no yuav tsum muaj qee qhov kev paub txog Pipelines, yog li peb xav kom koj nyeem thawj zaug phau ntawv kawm.

Teeb tsa koj qhov chaw ua haujlwm

Txhawm rau ua si nrog cov piv txwv hauv kab lus no, koj thawj zaug yuav tsum npaj koj qhov chaw ua haujlwm:

  1. Nruab thiab teeb tsa OpenShift 4 pawg. Peb cov piv txwv siv CodeReady Containers (CRD) rau qhov no, cov lus qhia kev teeb tsa uas tuaj yeem pom no.
  2. Tom qab cov pawg npaj tiav, koj yuav tsum nruab Pipeline Operator rau nws. Tsis txhob ntshai, nws yooj yim, installation cov lus qhia no.
  3. download Tekton CLI (tkn) no.
  4. Khiav qhov tsim-react-app kab hais kom ua cov cuab yeej los tsim ib daim ntawv thov uas koj yuav siv tom qab ntawd (qhov no yog daim ntawv thov yooj yim React).
  5. (Optional) Clone lub repository los khiav cov piv txwv daim ntawv thov hauv zos nrog npm nruab thiab ces npm pib.

Daim ntawv thov repository tseem yuav muaj k8s nplaub tshev, uas yuav muaj Kubernetes / OpenShift YAMLs siv los xa daim ntawv thov. Yuav muaj Tasks, ClusterTasks, Resources thiab Pipelines uas peb yuav tsim nyob rau hauv no chaw khaws cia.

Cia peb pib

Thawj kauj ruam rau peb qhov piv txwv yog los tsim ib qhov project tshiab hauv OpenShift pawg. Cia peb hu rau qhov project webapp-pipeline thiab tsim nws nrog cov lus txib hauv qab no:

$ oc new-project webapp-pipeline

Lub npe ntawm qhov project no yuav tshwm sim nyob rau hauv cov cai tom qab, yog li yog tias koj txiav txim siab rau npe rau lwm yam, tsis txhob hnov ​​​​qab hloov tus qauv code raws li. Pib los ntawm qhov no, peb yuav tsis mus rau saum-down, tab sis hauv qab-up: uas yog, peb yuav xub tsim tag nrho cov khoom ntawm conveyor, thiab tsuas yog tom qab ntawd lub conveyor nws tus kheej.

Yog li, ua ntej ntawm tag nrho cov ...

Cov hauj lwm

Cia peb tsim ob peb txoj haujlwm, uas yuav pab xa daim ntawv thov hauv peb lub raj xa dej. Thawj txoj haujlwm - apply_manifests_task - yog lub luag haujlwm rau kev thov YAML ntawm cov kev pabcuam Kubernetes (kev pabcuam, kev xa mus thiab kev) uas nyob hauv k8s folder ntawm peb daim ntawv thov. Lub luag haujlwm thib ob - update_deployment_task - yog lub luag haujlwm rau kev hloov kho cov duab uas twb tau xa mus rau qhov tsim los ntawm peb cov raj xa dej.

Tsis txhob txhawj yog tias nws tseem tsis tau meej meej. Qhov tseeb, cov haujlwm no yog qee yam zoo li kev siv hluav taws xob, thiab peb yuav saib xyuas lawv kom ntxaws me ntsis tom qab. Txog tam sim no, cia peb tsim lawv:

$ oc create -f https://raw.githubusercontent.com/nodeshift/webapp-pipeline-tutorial/master/tasks/update_deployment_task.yaml
$ oc create -f https://raw.githubusercontent.com/nodeshift/webapp-pipeline-tutorial/master/tasks/apply_manifests_task.yaml

Tom qab ntawd, siv tkn CLI hais kom ua, peb yuav xyuas tias cov haujlwm tau tsim:

$ tkn task ls

NAME                AGE
apply-manifests     1 minute ago
update-deployment   1 minute ago

Nco tseg: Cov no yog cov haujlwm hauv zos rau koj qhov project tam sim no.

Cov haujlwm ua pawg

Cluster cov haujlwm yog qhov pib zoo ib yam li cov haujlwm yooj yim. Ntawd yog, nws yog ib qho kev sau rov qab siv tau ntawm cov kauj ruam uas ua ke hauv ib txoj kev lossis lwm qhov thaum ua haujlwm tshwj xeeb. Qhov txawv yog tias pawg haujlwm muaj nyob txhua qhov chaw hauv pawg. Txhawm rau pom cov npe ntawm pawg haujlwm uas tau txais kev tsim thaum ntxiv Pipeline Operator, peb yuav rov siv cov lus txib tkn CLI:

$ tkn clustertask ls

NAME                       AGE
buildah                    1 day ago
buildah-v0-10-0            1 day ago
jib-maven                  1 day ago
kn                         1 day ago
maven                      1 day ago
openshift-client           1 day ago
openshift-client-v0-10-0   1 day ago
s2i                        1 day ago
s2i-go                     1 day ago
s2i-go-v0-10-0             1 day ago
s2i-java-11                1 day ago
s2i-java-11-v0-10-0        1 day ago
s2i-java-8                 1 day ago
s2i-java-8-v0-10-0         1 day ago
s2i-nodejs                 1 day ago
s2i-nodejs-v0-10-0         1 day ago
s2i-perl                   1 day ago
s2i-perl-v0-10-0           1 day ago
s2i-php                    1 day ago
s2i-php-v0-10-0            1 day ago
s2i-python-3               1 day ago
s2i-python-3-v0-10-0       1 day ago
s2i-ruby                   1 day ago
s2i-ruby-v0-10-0           1 day ago
s2i-v0-10-0                1 day ago

Tam sim no cia peb tsim ob pawg haujlwm. Thawj yuav tsim cov duab S2I thiab xa mus rau hauv OpenShift npe; qhov thib ob yog tsim peb cov duab raws li NGINX, siv daim ntawv thov peb twb tau tsim ua cov ntsiab lus.

Tsim thiab xa cov duab

Thaum tsim thawj txoj haujlwm, peb yuav rov ua qhov peb twb tau ua nyob rau hauv tsab xov xwm dhau los txog kev sib koom ua ke. Nco qab tias peb tau siv S2I duab (ubi8-s2i-web-app) los "tsim" peb daim ntawv thov, thiab xaus nrog ib daim duab khaws cia hauv OpenShift sab hauv sau npe. Tam sim no peb yuav siv daim duab S2I lub vev xaib no los tsim DockerFile rau peb lub app thiab tom qab ntawd siv Buildah los ua qhov tseeb tsim thiab thawb cov duab tshwm sim rau OpenShift sab hauv sau npe, vim qhov ntawd yog qhov OpenShift ua thaum koj xa koj daim ntawv thov siv NodeShift .

Peb puas paub tag nrho cov no, koj nug? Los ntawm official version ntawm Node.js, peb tsuas yog luam tawm thiab hloov kho rau peb tus kheej.

Yog li, tam sim no cia peb tsim s2i-web-app pawg ua haujlwm:

$ oc create -f https://raw.githubusercontent.com/nodeshift/webapp-pipeline-tutorial/master/clustertasks/s2i-web-app-task.yaml

Peb yuav tsis txheeb xyuas qhov no kom meej, tab sis tsuas yog tsom mus rau OUTPUT_DIR parameter:

params:
      - name: OUTPUT_DIR
        description: The location of the build output directory
        default: build

Los ntawm lub neej ntawd, qhov parameter no sib npaug los tsim, uas yog qhov twg React tso cov ntsiab lus sib dhos. Lwm lub moj khaum siv txoj hauv kev sib txawv, piv txwv li, hauv Ember nws tsis zoo. Cov txiaj ntsig ntawm peb thawj pawg ua haujlwm yuav yog cov duab uas muaj HTML, JavaScript, thiab CSS peb sau.

Tsim ib daim duab raws li NGINX

Raws li peb cov haujlwm thib ob, nws yuav tsum tsim cov duab NGINX rau peb, siv cov ntsiab lus ntawm daim ntawv thov uas peb tau tsim. Qhov tseem ceeb, qhov no yog ib feem ntawm ntu dhau los uas peb tau saib ntawm chained tsim.

Txhawm rau ua qhov no, peb - ​​raws nraim tib yam li saum toj no - yuav tsim pawg ua haujlwm webapp-build-runtime:

$ oc create -f https://raw.githubusercontent.com/nodeshift/webapp-pipeline-tutorial/master/clustertasks/webapp-build-runtime-task.yaml

Yog tias koj saib cov cai rau cov haujlwm no, koj tuaj yeem pom tias nws tsis qhia txog Git repository peb ua haujlwm nrog lossis cov npe ntawm cov duab peb tsim. Peb tsuas yog qhia meej tias peb tab tom hloov mus rau Git, lossis ib qho duab uas cov duab kawg yuav tsum tso tawm. Qhov no yog vim li cas cov haujlwm no tuaj yeem rov qab siv dua thaum ua haujlwm nrog lwm cov ntawv thov.

Thiab ntawm no peb gracefully txav mus rau lub ntsiab lus tom ntej ...

Cov kev pab

Yog li, txij li thaum, raws li peb nyuam qhuav hais, pawg haujlwm yuav tsum muaj ntau li ntau tau, peb yuav tsum tsim cov peev txheej uas yuav raug siv los ua cov tswv yim (Git repository) thiab tso tawm (cov duab kawg). Thawj qhov kev pabcuam peb xav tau yog Git, qhov twg peb daim ntawv thov nyob, qee yam zoo li no:

# This resource is the location of the git repo with the web application source
apiVersion: tekton.dev/v1alpha1
kind: PipelineResource
metadata:
  name: web-application-repo
spec:
  type: git
  params:
    - name: url
      value: https://github.com/nodeshift-starters/react-pipeline-example
    - name: revision
      value: master

Ntawm no PipelineResource yog hom git. Tus yuam sij url hauv ntu params taw qhia rau ib qho chaw cia khoom tshwj xeeb thiab qhia txog tus tswv ceg (qhov no yog xaiv tau, tab sis peb sau nws kom tiav).

Tam sim no peb yuav tsum tsim cov peev txheej rau cov duab uas cov txiaj ntsig ntawm s2i-web-app ua haujlwm yuav raug cawm, qhov no ua tiav zoo li no:

# This resource is the result of running "npm run build",  the resulting built files will be located in /opt/app-root/output
apiVersion: tekton.dev/v1alpha1
kind: PipelineResource
metadata:
  name: built-web-application-image
spec:
  type: image
  params:
    - name: url
      value: image-registry.openshift-image-registry.svc:5000/webapp-pipeline/built-web-application:latest

Ntawm no PipelineResource yog hom duab, thiab tus nqi ntawm url parameter taw qhia rau sab hauv OpenShift Image Registry, tshwj xeeb yog ib qho nyob hauv webapp-pipeline namespace. Tsis txhob hnov ​​​​qab hloov qhov chaw no yog tias koj siv lub npe txawv.

Thiab thaum kawg, cov peev txheej kawg peb xav tau kuj yuav yog hom duab thiab qhov no yuav yog daim duab NGINX kawg uas yuav raug siv thaum xa mus:

# This resource is the image that will be just the static html, css, js files being run with nginx
apiVersion: tekton.dev/v1alpha1
kind: PipelineResource
metadata:
  name: runtime-web-application-image
spec:
  type: image
  params:
    - name: url
      value: image-registry.openshift-image-registry.svc:5000/webapp-pipeline/runtime-web-application:latest

Ntxiv dua thiab, nco ntsoov tias cov peev txheej no khaws cov duab hauv qhov chaw sau npe hauv OpenShift hauv webapp-pipeline namespace.

Txhawm rau tsim tag nrho cov peev txheej no ib zaug, peb siv cov lus txib tsim:

$ oc create -f https://raw.githubusercontent.com/nodeshift/webapp-pipeline-tutorial/master/resources/resource.yaml

Koj tuaj yeem paub tseeb tias cov peev txheej tau tsim zoo li no:

$ tkn resource ls

Conveyor pipeline

Tam sim no peb muaj tag nrho cov khoom tsim nyog, cia peb sib sau ua ke ib lub raj xa dej los ntawm lawv los ntawm kev tsim nws nrog cov lus txib hauv qab no:

$ oc create -f https://raw.githubusercontent.com/nodeshift/webapp-pipeline-tutorial/master/pipelines/build-and-deploy-react.yaml

Tab sis ua ntej peb khiav cov lus txib no, cia saib cov khoom no. Thawj yog lub npe:

apiVersion: tekton.dev/v1alpha1
kind: Pipeline
metadata:
  name: build-and-deploy-react

Tom qab ntawd hauv seem spec peb pom qhov qhia txog cov peev txheej peb tsim ua ntej:

spec:
  resources:
    - name: web-application-repo
      type: git
    - name: built-web-application-image
      type: image
    - name: runtime-web-application-image
      type: image

Tom qab ntawd peb tsim cov haujlwm uas peb cov kav dej yuav tsum ua kom tiav. Ua ntej tshaj plaws, nws yuav tsum ua tiav txoj haujlwm s2i-web-app peb tau tsim:

tasks:
    - name: build-web-application
      taskRef:
        name: s2i-web-app
        kind: ClusterTask

Txoj haujlwm no siv cov tswv yim (gir peev txheej) thiab cov khoom tsim tawm (ua-web-application-duab peev txheej) tsis muaj. Peb kuj dhau nws qhov kev txwv tshwj xeeb kom nws tsis txheeb xyuas TLS vim peb siv daim ntawv pov thawj tus kheej kos npe:

resources:
        inputs:
          - name: source
            resource: web-application-repo
        outputs:
          - name: image
            resource: built-web-application-image
      params:
        - name: TLSVERIFY
          value: "false"

Cov haujlwm tom ntej no yuav luag zoo ib yam, tsuas yog ntawm no webapp-build-runtime pawg haujlwm peb twb tau tsim hu ua:

name: build-runtime-image
    taskRef:
      name: webapp-build-runtime
      kind: ClusterTask

Raws li nrog rau cov hauj lwm yav dhau los, peb dhau ntawm ib qho kev pab, tab sis tam sim no nws yog built-web-application-duab (qhov tso zis ntawm peb cov hauj lwm yav dhau los). Thiab raws li qhov tso zis peb rov teeb tsa cov duab. Txij li cov hauj lwm no yuav tsum tau ua tom qab ib qho dhau los, peb ntxiv qhov runAfter teb:

resources:
        inputs:
          - name: image
            resource: built-web-application-image
        outputs:
          - name: image
            resource: runtime-web-application-image
        params:
        - name: TLSVERIFY
          value: "false"
      runAfter:
        - build-web-application

Ob txoj haujlwm tom ntej no yog lub luag haujlwm rau kev siv cov kev pabcuam, txoj hauv kev thiab xa tawm YAML cov ntaub ntawv uas nyob hauv k8s cov npe ntawm peb lub vev xaib thov, thiab tseem yuav hloov kho qhov kev xa tawm no thaum tsim cov duab tshiab. Peb tau txiav txim siab ob pawg haujlwm no thaum pib ntawm tsab xov xwm.

Pib lub conveyor

Yog li, txhua qhov chaw ntawm peb cov kav dej tau tsim, thiab peb yuav khiav nws nrog cov lus txib hauv qab no:

$ tkn pipeline start build-and-deploy-react

Nyob rau theem no, cov kab hais kom ua yog siv sib tham sib thiab koj yuav tsum xaiv cov peev txheej tsim nyog hauv kev teb rau txhua qhov kev thov: rau cov peev txheej git, xaiv web-application-repo, tom qab ntawd rau thawj cov peev txheej duab, tsim-web-daim ntawv thov. -image, thiab thaum kawg, rau cov duab thib ob -runtime-web-application-duab:

? Choose the git resource to use for web-application-repo: web-application-repo (https://github.com/nodeshift-starters/react-pipeline-example)
? Choose the image resource to use for built-web-application-image: built-web-application-image (image-registry.openshift-image-registry.svc:5000/webapp-pipeline/built-web-
application:latest)
? Choose the image resource to use for runtime-web-application-image: runtime-web-application-image (image-registry.openshift-image-registry.svc:5000/webapp-pipeline/runtim
e-web-application:latest)
Pipelinerun started: build-and-deploy-react-run-4xwsr

Tam sim no cia peb txheeb xyuas cov xwm txheej ntawm cov raj xa dej siv cov lus txib hauv qab no:

$ tkn pipeline logs -f

Thaum lub raj xa dej tau pib thiab daim ntawv thov raug xa mus, peb tuaj yeem thov txoj kev tshaj tawm nrog cov lus txib hauv qab no:

$ oc get route react-pipeline-example --template='http://{{.spec.host}}'

Txhawm rau pom qhov pom ntau dua, koj tuaj yeem saib peb cov raj xa dej hauv hom tsim tawm ntawm lub vev xaib console hauv ntu Cov raj xa dej, raws li qhia hauv daim duab. 1.

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Fig.1. Kev tshuaj xyuas ntawm cov kav xa dej.

Nyem rau ntawm lub raj xa dej yuav qhia cov ntsiab lus ntxiv, raws li pom hauv daim duab 2.

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Rice. 2. Cov ntaub ntawv ntxiv txog cov kav dej.

Tom qab paub ntau ntxiv, koj tuaj yeem pom cov ntawv thov khiav hauv qhov pom topology, raws li qhia hauv Fig.3.

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Fig 3. Launched pod.

Nyem rau ntawm lub voj voog nyob rau sab xis saum toj ntawm lub icon qhib peb daim ntawv thov, raws li qhia hauv daim duab 4.

Cov ntawv thov niaj hnub ntawm OpenShift, ntu 3: OpenShift ua ib puag ncig kev txhim kho thiab OpenShift Pipelines

Rice. 4. Khiav React daim ntawv thov.

xaus

Yog li, peb tau qhia yuav ua li cas khiav lub server txhim kho rau koj daim ntawv thov ntawm OpenShift thiab synchronize nws nrog cov ntaub ntawv hauv zos. Peb kuj tau saib yuav ua li cas simulate ib tug chained-build template siv OpenShift Pipelines. Tag nrho cov lej piv txwv los ntawm kab lus no tuaj yeem pom no.

Cov peev txheej ntxiv (EN)

Tshaj tawm ntawm cov webinars yav tom ntej

Peb tab tom pib hnub Friday webinars txog ib haiv neeg kev siv Red Hat OpenShift Container Platform thiab Kubernetes:

Tau qhov twg los: www.hab.com

Ntxiv ib saib