Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Салом ба ҳама дар ин блог! Ин сеюмин паём дар як силсила аст, ки дар он мо нишон медиҳем, ки чӣ тавр ҷойгир кардани замимаҳои муосири веб дар Red Hat OpenShift.

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Дар ду паёми қаблӣ, мо нишон додем, ки чӣ гуна истифода бурдани веб-барномаҳои муосирро дар чанд қадам ва чӣ гуна истифода бурдани тасвири нави S2I дар якҷоягӣ бо тасвири сервери HTTP, ба монанди NGINX, бо истифода аз сохторҳои занҷирнок барои ташкили истихроҷи истеҳсолот .

Имрӯз мо нишон медиҳем, ки чӣ гуна сервери таҳияи барномаи худро дар платформаи OpenShift иҷро карда, онро бо системаи файлии маҳаллӣ ҳамоҳанг созем ва инчунин дар бораи он ки чӣ гуна қубурҳои OpenShift ва чӣ гуна онҳоро ҳамчун алтернатива ба ассамблеяҳои алоқаманд истифода бурдан мумкин аст, сӯҳбат мекунем.

OpenShift ҳамчун муҳити рушд

Раванди кории рушд

Чунон ки аллакай дар паёми аввал, раванди маъмулии таҳияи барномаҳои веби муосир танҳо як навъ "сервери таҳия" мебошад, ки тағиротро дар файлҳои маҳаллӣ пайгирӣ мекунад. Вақте ки онҳо ба вуқӯъ меоянд, сохтани барнома ба кор андохта мешавад ва он ба браузер нав карда мешавад.

Дар аксари чаҳорчӯбаҳои муосир, чунин "сервери рушд" дар абзорҳои мувофиқи сатри фармон сохта шудааст.

Намунаи маҳаллӣ

Аввалан, биёед бубинем, ки ин ҳангоми иҷро кардани барномаҳо ба таври маҳаллӣ чӣ гуна кор мекунад. Барои мисол аризаро гирем Натиҷа аз мақолаҳои қаблӣ, гарчанде ки қариб як консепсияҳои ҷараёни корӣ дар ҳама чаҳорчӯбаҳои дигари муосир татбиқ мешаванд.
Ҳамин тавр, барои оғоз кардани "сервери dev" дар мисоли React мо фармони зеринро ворид мекунем:

$ npm run start

Пас, дар равзанаи терминал мо чунин чизеро мебинем:

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Ва замимаи мо дар браузери пешфарз кушода мешавад:

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Ҳоло, агар мо ба файл тағирот ворид кунем, барнома бояд дар браузер навсозӣ шавад.

Хуб, бо таҳия дар реҷаи маҳаллӣ ҳама чиз равшан аст, аммо чӣ гуна ба ҳамин чиз дар OpenShift ноил шудан мумкин аст?

Сервери рушд дар OpenShift

Агар дар хотир доред, дар пости қаблӣ, мо ба марҳилаи ба истилоҳ иҷрошудаи тасвири S2I назар кардем ва дидем, ки ба таври нобаёнӣ, модули хидматрасонӣ барои хидматрасонии веб-барномаи мо масъул аст.

Бо вуҷуди ин, агар шумо бодиққат назар кунед скриптро иҷро кунед аз он мисол, он дорои $NPM_RUN тағирёбандаи муҳити зист аст, ки ба шумо имкон медиҳад фармони худро иҷро кунед.

Масалан, мо метавонем модули nodeshift-ро барои ҷойгиркунии замимаи мо истифода барем:

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

Эзоҳ: Мисоли дар боло овардашуда барои нишон додани идеяи умумӣ кӯтоҳ карда шудааст.

Дар ин ҷо мо тағирёбандаи муҳити зисти NPM_RUN-ро ба густариши худ илова кардем, ки он вақти иҷроро барои иҷро кардани фармони оғози ришта нишон медиҳад, ки сервери таҳияи React-ро дар дохили pod OpenShift мо оғоз мекунад.

Агар шумо ба гузориши як поди равон назар кунед, он чунин менамояд:

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Албатта, ҳамаи ин ҳеҷ чиз нахоҳад буд, то даме ки мо рамзи маҳаллиро бо код ҳамоҳанг созем, ки он низ тағиротро назорат мекунад, аммо дар сервери дурдаст зиндагӣ мекунад.

Ҳамоҳангсозии коди дурдаст ва маҳаллӣ

Хушбахтона, nodeshift метавонад ба осонӣ дар ҳамоҳангсозӣ кӯмак кунад ва шумо метавонед фармони тамошоро барои пайгирии тағирот истифода баред.

Пас, пас аз он ки мо фармонро барои ҷойгир кардани сервери таҳия барои замимаи мо иҷро кардем, мо метавонем фармони зеринро бехатар истифода барем:

$ npx nodeshift watch

Дар натиҷа, пайвастшавӣ ба подтаи иҷрошавандае, ки мо каме пештар офаридаем, сурат мегирад, ҳамоҳангсозии файлҳои маҳаллии мо бо кластери дурдаст фаъол мешавад ва файлҳои системаи маҳаллии мо барои тағирот назорат карда мешаванд.

Аз ин рӯ, агар мо ҳоло файли src/App.js-ро навсозӣ кунем, система ба ин тағиротҳо вокуниш нишон дода, онҳоро ба кластери дурдаст нусхабардорӣ мекунад ва сервери таҳияро оғоз мекунад, ки он гоҳ барномаи моро дар браузер навсозӣ мекунад.

Барои ба итмом расонидани расм, биёед нишон диҳем, ки ин ҳама фармонҳо чӣ гунаанд:

$ 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

Фармони тамошо абстраксия дар болои фармони oc rsync аст, шумо метавонед дар бораи чӣ гуна кор кардани он маълумоти бештар гиред дар ин ҷо.

Ин як мисол барои React буд, аммо ҳамин усулро метавон бо дигар чаҳорчӯбаҳо истифода бурд, танҳо тағирёбандаи муҳити NPM_RUN-ро дар ҳолати зарурӣ таъин кунед.

Қубурҳои Openshift

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Минбаъд мо дар бораи асбобе ба монанди OpenShift Pipelines ва чӣ гуна онро ҳамчун алтернатива ба сохторҳои занҷир истифода бурдан мумкин аст, сӯҳбат хоҳем кард.

OpenShift Pipelines чист?

OpenShift Pipelines як системаи пайвастаи CI/CD-и абрӣ мебошад, ки барои ташкили қубурҳо бо истифода аз Tekton пешбинӣ шудааст. Tekton як чаҳорчӯбаи кушодаи Kubernetes CI/CD мебошад, ки ба шумо имкон медиҳад густаришро дар платформаҳои гуногун (Kubernetes, бе серверҳо, мошинҳои виртуалӣ ва ғайра) тавассути абстракт аз қабати аслӣ автоматӣ кунед.

Фаҳмидани ин мақола каме дониши қубурҳоро талаб мекунад, аз ин рӯ мо тавсия медиҳем, ки аввал хонед китоби дарсии расмӣ.

Муайян кардани муҳити кории шумо

Барои бозӣ кардан бо мисолҳои ин мақола, шумо аввал бояд муҳити кории худро омода кунед:

  1. Насб ва танзим кардани кластери OpenShift 4. Намунаҳои мо барои ин контейнерҳои CodeReady (CRD) -ро истифода мебаранд, ки дастурҳои насбкуниро барои онҳо пайдо кардан мумкин аст. дар ин ҷо.
  2. Пас аз омода шудани кластер, шумо бояд Оператори қубурро дар он насб кунед. Натарсед, ин осон аст, дастурҳои насб дар ин ҷо.
  3. Зеркашӣ Тектон CLI (tkn) дар ин ҷо.
  4. Асбоби сатри фармони create-react-appро иҷро кунед, то барномаеро эҷод кунед, ки шумо баъдан ҷойгир мекунед (ин як барномаи оддӣ аст Натиҷа).
  5. (Ихтиёрӣ) Анборро клон кунед, то барномаи намунавиро ба таври маҳаллӣ бо насби npm ва сипас npm оғоз кунед.

Анбори барнома инчунин ҷузвдони k8s хоҳад дошт, ки дар он YAML-ҳои Kubernetes/OpenShift, ки барои ҷойгиркунии барнома истифода мешаванд, иборат аст. Вазифаҳо, вазифаҳои кластерӣ, захираҳо ва қубурҳо мавҷуданд, ки мо дар ин ҷо эҷод мекунем анборҳо.

Биёед оғоз кунем

Қадами аввал барои мисоли мо ин сохтани лоиҳаи нав дар кластери OpenShift мебошад. Биёед ин лоиҳаро webapp-pipeline даъват кунем ва онро бо фармони зерин созем:

$ oc new-project webapp-pipeline

Ин номи лоиҳа баъдтар дар код пайдо мешавад, аз ин рӯ, агар шумо қарор диҳед, ки онро ягон чизи дигар номгузорӣ кунед, мувофиқи он рамзи мисолро таҳрир карданро фаромӯш накунед. Мо аз хамин нукта сар карда, на аз боло ба поён, балки аз поён ба боло меравем: яъне мо аввал тамоми кисмхои конвейерро меофарем ва танхо баъд худи конвейерро ба вучуд меоварем.

Пас, пеш аз ҳама ...

Вазифахо

Биёед якчанд вазифаро эҷод кунем, ки он гоҳ барои ҷойгиркунии барнома дар лӯлаи мо кӯмак мекунад. Вазифаи аввал - apply_manifests_task - барои татбиқи YAML он захираҳои Kubernetes (хизматрасонӣ, ҷойгиркунӣ ва масир), ки дар папкаи k8s замимаи мо ҷойгиранд, масъул аст. Вазифаи дуюм - update_deployment_task - барои навсозии тасвири аллакай ҷойгиршуда ба тасвири аз ҷониби лӯлаи мо сохташуда масъул аст.

Парво накунед, агар он ҳанӯз хеле равшан нест. Дарвоқеъ, ин вазифаҳо ба хидматҳои коммуналӣ монанданд ва мо каме баъдтар онҳоро муфассалтар дида мебароем. Ҳоло, биёед онҳоро эҷод кунем:

$ 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

Сипас, бо истифода аз фармони tkn CLI, мо тафтиш мекунем, ки вазифаҳо сохта шудаанд:

$ tkn task ls

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

Эзоҳ: Инҳо вазифаҳои маҳаллӣ барои лоиҳаи ҷории шумо мебошанд.

Вазифаҳои кластерӣ

Вазифаҳои кластер асосан бо вазифаҳои оддӣ якхелаанд. Яъне, ин маҷмӯи қадамҳои такрорӣ мебошад, ки ҳангоми иҷрои вазифаи мушаххас ба ин ё он роҳ якҷоя карда мешаванд. Фарқият дар он аст, ки вазифаи кластер дар ҳама ҷо дар дохили кластер дастрас аст. Барои дидани рӯйхати вазифаҳои кластер, ки ҳангоми илова кардани Оператори қубур ба таври худкор сохта мешаванд, мо боз фармони 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

Акнун биёед ду вазифаи кластерро созем. Аввалин тасвири S2I-ро тавлид мекунад ва онро ба феҳристи дохилии OpenShift мефиристад; дуюм ин сохтани симои мо дар асоси NGINX бо истифода аз барномае, ки мо аллакай ҳамчун мундариҷа сохтаем.

Тасвирро эҷод ва ирсол кунед

Ҳангоми сохтани вазифаи аввал, мо он чизеро, ки дар мақолаи қаблӣ дар бораи анҷуманҳои алоқаманд карда будем, такрор мекунем. Ёдовар мешавем, ки мо тасвири S2I (ubi8-s2i-web-app) барои "сохтани" замимаи худро истифода бурдем ва бо тасвире, ки дар феҳристи дохилии OpenShift захира шудааст, анҷом додем. Ҳоло мо ин тасвири веб-барномаи S2I-ро барои сохтани DockerFile барои барномаи худ истифода мебарем ва сипас Buildah-ро барои сохтани воқеии худ истифода мебарем ва тасвири натиҷаро ба феҳристи дохилии OpenShift тела медиҳем, зеро маҳз ҳамон чизест, ки OpenShift ҳангоми ҷойгиркунии замимаҳои худро бо истифода аз NodeShift иҷро мекунад. .

Мо ин ҳамаро аз куҷо медонистем, мепурсед? Аз нусхаи расмии Node.js, мо онро танҳо нусхабардорӣ кардем ва барои худамон тағир додем.

Пас, биёед вазифаи кластери s2i-web-app эҷод кунем:

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

Мо инро ба таври муфассал таҳлил намекунем, балки танҳо ба параметри OUTPUT_DIR тамаркуз хоҳем кард:

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

Бо нобаёнӣ, ин параметр ба сохтмон баробар аст, ки дар он React мундариҷаи ҷамъшударо ҷойгир мекунад. Дигар чаҳорчӯбаҳо роҳҳои гуногунро истифода мебаранд, масалан, дар Ember он dist аст. Натиҷаи вазифаи кластерии мо тасвирест, ки HTML, JavaScript ва CSS-ро дар бар мегирад, ки мо ҷамъоварӣ кардем.

Дар асоси NGINX тасвир созед

Дар мавриди вазифаи кластери дуюми мо, он бояд бо истифода аз мундариҷаи замимае, ки мо аллакай сохтаем, барои мо тасвири NGINX-ро бунёд кунад. Аслан, ин қисми қисми қаблӣ аст, ки мо ба сохторҳои занҷирӣ назар кардем.

Барои ин, мо - айнан ҳамон тавре ки дар боло гуфта шудааст - як вазифаи кластерии webapp-build-runtime эҷод мекунем:

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

Агар шумо ба рамзи ин вазифаҳои кластер назар кунед, шумо мебинед, ки он анбори Git-ро, ки мо бо он кор карда истодаем ва номи тасвирҳое, ки мо эҷод мекунем, муайян намекунад. Мо танҳо муайян мекунем, ки маҳз чиро ба Git интиқол медиҳем ё тасвири муайяне, ки дар он тасвири ниҳоӣ бояд бароварда шавад. Ин аст, ки чаро ин вазифаҳои кластерро ҳангоми кор бо барномаҳои дигар дубора истифода бурдан мумкин аст.

Ва дар ин ҷо мо бодиққат ба нуқтаи дигар мегузарем ...

Манбаъҳо

Ҳамин тавр, тавре ки мо гуфта будем, вазифаҳои кластер бояд то ҳадди имкон умумӣ бошанд, мо бояд захираҳоеро эҷод кунем, ки ҳамчун вуруд (анбори Git) ва ҳамчун баромад (тасвирҳои ниҳоӣ) истифода шаванд. Аввалин манбаи ба мо лозим аст Git аст, ки дар он барномаи мо ҷойгир аст, чизе монанди ин:

# 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

Дар ин ҷо PipelineResource навъи git аст. Калиди url дар бахши парамҳо ба анбори мушаххас ишора мекунад ва шохаи асосӣро муайян мекунад (ин ихтиёрӣ аст, аммо мо онро барои пуррагӣ менависем).

Ҳоло ба мо лозим аст, ки барои тасвир захирае эҷод кунем, ки дар он натиҷаҳои вазифаи s2i-web-app захира карда мешаванд, ин чунин аст:

# 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

Дар ин ҷо PipelineResource аз намуди тасвир аст ва арзиши параметри url ба Феҳристи тасвирҳои OpenShift, махсусан ба он, ки дар фазои номи webapp-loule ҷойгир аст, ишора мекунад. Фаромӯш накунед, ки ин танзимотро тағир диҳед, агар шумо фазои номҳои дигарро истифода баред.

Ва ниҳоят, манбаи охирине, ки ба мо лозим аст, инчунин тасвири навъи NGINX хоҳад буд ва ин тасвири ниҳоии NGINX хоҳад буд, ки баъдан ҳангоми ҷойгиркунӣ истифода мешавад:

# 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

Боз ҳам қайд кунед, ки ин манбаъ тасвирро дар феҳристи дохилии OpenShift дар фазои номи webapp-pipeline нигоҳ медорад.

Барои якбора сохтани ҳамаи ин захираҳо, мо фармони эҷодро истифода мебарем:

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

Шумо метавонед боварӣ ҳосил кунед, ки захираҳо чунин сохта шудаанд:

$ tkn resource ls

Қубури конвейерӣ

Акнун, ки мо ҳама ҷузъҳои заруриро дорем, биёед аз онҳо қубурро бо фармони зерин эҷод кунем:

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

Аммо пеш аз он ки ин фармонро иҷро кунем, биёед ин ҷузъҳоро дида бароем. Аввалин ном аст:

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

Сипас дар бахши мушаххасот мо нишонаи захираҳоеро мебинем, ки мо қаблан офаридаем:

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

Пас мо вазифаҳоеро эҷод мекунем, ки лӯлаи мо бояд анҷом диҳад. Пеш аз ҳама, он бояд вазифаи s2i-web-appро, ки мо аллакай офаридаем, иҷро кунад:

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

Ин вазифа параметрҳои вуруд (манбаи gir) ва баромад (манбаи сохта-web-application-image)-ро мегирад. Мо инчунин онро як параметри махсус мегузорем, то он TLS-ро тафтиш накунад, зеро мо сертификатҳои худ имзошударо истифода мебарем:

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

Вазифаи навбатӣ тақрибан якхела аст, танҳо дар ин ҷо вазифаи кластери webapp-build-runtime, ки мо аллакай сохтаем, номида мешавад:

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

Мисли вазифаи қаблӣ, мо дар як манбаъ мегузарем, аммо ҳоло он тасвири сохта-web-application-тасвир аст (натиҷаи вазифаи қаблии мо). Ва чун баромад мо боз тасвирро муқаррар мекунем. Азбаски ин вазифа бояд пас аз супориши қаблӣ иҷро карда шавад, мо майдони runAfter -ро илова мекунем:

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

Ду вазифаи навбатӣ барои истифодаи хидмат, масир ва ҷойгиркунии файлҳои YAML, ки дар феҳристи k8s замимаи веби мо зиндагӣ мекунанд ва инчунин барои навсозии ин ҷойгиркунӣ ҳангоми эҷоди тасвирҳои нав масъуланд. Мо ин ду вазифаи кластерро дар аввали мақола муайян кардем.

Ба кор андохтани конвейер

Ҳамин тавр, ҳамаи қисмҳои лӯлаи мо сохта шудаанд ва мо онро бо фармони зерин иҷро мекунем:

$ tkn pipeline start build-and-deploy-react

Дар ин марҳила, сатри фармон ба таври интерактивӣ истифода мешавад ва шумо бояд дар посух ба ҳар як дархости он захираҳои мувофиқро интихоб кунед: барои захираи git, web-application-repo-ро интихоб кунед, сипас барои манбаи аввалини тасвир, сохта-web-application-ро интихоб кунед. -тасвир ва ниҳоят, барои манбаи дуюми тасвир - runtime-web-application-image:

? 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

Акнун биёед ҳолати қубурро бо фармони зерин тафтиш кунем:

$ tkn pipeline logs -f

Пас аз он ки лӯла оғоз шуд ва барнома ҷойгир карда шуд, мо метавонем масири нашршударо бо фармони зерин дархост кунем:

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

Барои визуализатсияи бештар, шумо метавонед лӯлаи моро дар реҷаи таҳиягари консоли веб дар қисмат бубинед Масъулият, чунон ки дар расми нишон дода шудааст. 1.

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Расми 1. Баррасии қубурҳои ҷорӣ.

Ангуштзании лӯлаи ҷорӣ тафсилоти иловагиро нишон медиҳад, тавре ки дар расми 2 нишон дода шудааст.

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Райс. 2. Маълумоти иловагӣ дар бораи қубур.

Пас аз маълумоти бештар, шумо метавонед барномаҳои иҷрошавандаро дар намоиш бубинед Топология, чунон ки дар расми 3 нишон дода шудааст.

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Расми 3. Подшоҳи ба кор андохташуда.

Бо пахш кардани доирае, ки дар кунҷи рости болоии нишона ҷойгир аст, барномаи моро мекушояд, ки дар расми 4 нишон дода шудааст.

Барномаҳои муосир дар OpenShift, қисми 3: OpenShift ҳамчун муҳити рушд ва қубурҳои OpenShift

Райс. 4. Иҷрои барномаи React.

хулоса

Ҳамин тавр, мо нишон додем, ки чӣ гуна сервери таҳияи барномаи худро дар OpenShift иҷро кардан ва онро бо системаи файлии маҳаллӣ ҳамоҳанг созем. Мо инчунин ба он дида баромадем, ки чӣ тавр як қолаби сохташуда бо истифода аз OpenShift Pipelines тақлид карда шавад. Ҳама рамзҳои мисоли ин мақоларо ёфтан мумкин аст дар ин ҷо.

Захираҳои иловагӣ (EN)

Эълонҳо дар бораи вебинарҳои дарпешистода

Мо як қатор вебинарҳои ҷумъаро дар бораи таҷрибаи ватанӣ бо истифода аз Red Hat OpenShift Container Platform ва Kubernetes оғоз мекунем:

Манбаъ: will.com

Илова Эзоҳ