Энэ блог дээрх бүх хүмүүст энэ өдрийн мэндийг хүргэе! Энэ бол Red Hat OpenShift дээр орчин үеийн вэб програмуудыг хэрхэн ашиглахыг харуулсан цувралын гурав дахь нийтлэл юм.
Өмнөх хоёр нийтлэлд бид орчин үеийн вэб програмуудыг хэдхэн алхамаар хэрхэн ашиглах, шинэ S2I дүрсийг NGINX гэх мэт бэлэн HTTP серверийн дүрстэй хамт үйлдвэрлэлийн байршуулалтыг зохион байгуулахад гинжлэгдсэн бүтэц ашиглан хэрхэн ашиглахыг харуулсан. .
Өнөөдөр бид OpenShift платформ дээр өөрийн програмын хөгжүүлэлтийн серверийг хэрхэн ажиллуулж, локал файлын системтэй синхрончлохыг харуулахаас гадна OpenShift Pipelines гэж юу болох, тэдгээрийг холбосон угсралтын өөр хувилбар болгон хэрхэн ашиглах талаар ярих болно.
OpenShift нь хөгжүүлэлтийн орчин юм
Хөгжлийн ажлын урсгал
Өмнө дурьдсанчлан
Ихэнх орчин үеийн хүрээнүүдэд ийм "хөгжлийн сервер" нь холбогдох командын мөрийн хэрэгслүүдэд суурилагдсан байдаг.
Орон нутгийн жишээ
Эхлээд програмуудыг орон нутагт ажиллуулах үед энэ нь хэрхэн ажилладагийг харцгаая. Програмыг жишээ болгон авч үзье
Тиймээс, бидний React жишээн дээр "dev server"-ийг эхлүүлэхийн тулд бид дараах тушаалыг оруулна.
$ npm run start
Дараа нь терминалын цонхонд бид иймэрхүү зүйлийг харах болно:
Манай програм анхдагч хөтөч дээр нээгдэнэ:
Одоо, хэрэв бид файлд өөрчлөлт хийвэл програм хөтөч дээр шинэчлэгдэх ёстой.
За, орон нутгийн горимд хөгжүүлснээр бүх зүйл тодорхой байна, гэхдээ OpenShift дээр хэрхэн яаж хүрэх вэ?
OpenShift дээрх хөгжүүлэлтийн сервер
Хэрэв та санаж байвал in
Гэсэн хэдий ч, хэрэв та анхааралтай ажиглавал
Жишээлбэл, бид nodeshift модулийг ашиглан програмаа байрлуулах боломжтой.
$ npx nodeshift --deploy.env NPM_RUN="yarn start" --dockerImage=nodeshift/ubi8-s2i-web-app
Жич: Дээрх жишээг ерөнхий санааг илэрхийлэхийн тулд товчилсон болно.
Энд бид NPM_RUN орчны хувьсагчийг байршуулалтдаа нэмсэн бөгөөд энэ нь бидний OpenShift pod доторх React хөгжүүлэлтийн серверийг эхлүүлдэг yarn start командыг ажиллуулах хугацааг зааж өгдөг.
Хэрэв та ажиллаж байгаа подын бүртгэлийг харвал энэ нь дараах байдалтай харагдана.
Мэдээжийн хэрэг, бид локал кодыг кодтой синхрончлох хүртэл энэ бүхэн юу ч биш байх бөгөөд энэ нь өөрчлөлтийг хянаж байдаг боловч алсын сервер дээр амьдардаг.
Алсын болон дотоод кодыг синхрончлох
Аз болоход nodeshift нь синхрончлолд хялбархан туслах бөгөөд та өөрчлөлтийг хянахын тулд watch командыг ашиглаж болно.
Тиймээс бид програмынхаа хөгжүүлэлтийн серверийг байршуулах командыг ажиллуулсны дараа бид дараах тушаалыг аюулгүй ашиглаж болно.
$ npx nodeshift watch
Үүний үр дүнд бидний бага зэрэг эрт үүсгэсэн ажиллаж байгаа pod-д холболт хийгдэж, манай дотоод файлуудыг алсын кластертай синхрончлох ажиллагаа идэвхжиж, манай локал систем дээрх файлууд өөрчлөгдсөн эсэхийг хянаж эхэлнэ.
Тиймээс, хэрэв бид одоо 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
Watch команд нь oc rsync командын дээд талд байгаа хийсвэрлэл бөгөөд та хэрхэн ажилладаг талаар илүү ихийг мэдэх боломжтой.
Энэ нь React-ийн жишээ байсан, гэхдээ яг ижил аргыг бусад фреймворкуудад ашиглаж болно, шаардлагатай бол NPM_RUN орчны хувьсагчийг тохируулахад л хангалттай.
Нээлттэй дамжуулах хоолой
Дараа нь бид OpenShift Pipelines гэх мэт хэрэгсэл болон түүнийг гинжин хэлхээний өөр хувилбар болгон хэрхэн ашиглах талаар ярилцах болно.
OpenShift дамжуулах хоолой гэж юу вэ
OpenShift Pipelines нь Tekton ашиглан дамжуулах хоолойг зохион байгуулахад зориулагдсан үүлэнд суурилсан CI/CD тасралтгүй нэгтгэх, дамжуулах систем юм. Tekton нь Kubernetes-ийн уян хатан нээлттэй эх сурвалжийн CI/CD хүрээ бөгөөд үндсэн давхаргаас хийсвэрлэн янз бүрийн платформ (Кубернетес, сервергүй, виртуал машин гэх мэт) дээр байршуулалтыг автоматжуулах боломжийг олгодог.
Энэ нийтлэлийг ойлгохын тулд Pipelines-ийн талаар бага зэрэг мэдлэгтэй байх шаардлагатай тул эхлээд уншихыг зөвлөж байна
Ажлынхаа орчинг бүрдүүлж байна
Энэ өгүүлэлд дурдсан жишээнүүдтэй тоглохын тулд эхлээд ажлын орчноо бэлтгэх хэрэгтэй.
- OpenShift 4 кластерыг суулгаж тохируулна уу. Үүний тулд манай жишээнүүд CodeReady Containers (CRD) ашигладаг бөгөөд суулгах зааврыг эндээс олж болно.
энд . - Кластер бэлэн болсны дараа та дээр нь дамжуулах хоолойн операторыг суулгах хэрэгтэй. Бүү ай, энэ нь хялбар, суулгах заавар
энд . - Татаж авах
Tekton CLI (tkn)энд . - Create-react-app командын мөрийн хэрэгслийг ажиллуулж, дараа нь ашиглах програмаа үүсгэнэ үү (энэ нь энгийн програм юм.
урвалд ). - (Заавал биш) Жишээ програмыг npm install, дараа нь npm start-оор локал байдлаар ажиллуулахын тулд репозиторыг клон хийнэ үү.
Програмын агуулах нь мөн k8s хавтастай байх бөгөөд энэ хавтас нь програмыг байрлуулахад хэрэглэгдэх Kubernetes/OpenShift YAML-уудыг агуулна. Үүнд бидний үүсгэх даалгавар, кластерийн даалгавар, нөөц, дамжуулах шугамууд байх болно.
Эхэлцгээе
Бидний жишээний эхний алхам бол OpenShift кластерт шинэ төсөл үүсгэх явдал юм. Энэ төслийг webapp-pipeline гэж нэрлээд дараах тушаалаар үүсгэцгээе.
$ oc new-project webapp-pipeline
Энэ төслийн нэр дараа нь кодонд гарч ирэх тул хэрэв та өөр нэр өгөхөөр шийдсэн бол жишээ кодыг засварлахаа бүү мартаарай. Энэ цэгээс эхлэн бид дээрээс доошоо биш, харин доороос дээш, өөрөөр хэлбэл бид эхлээд конвейерийн бүх эд ангиудыг бүтээж, дараа нь дамжуулагчийг өөрөө бүтээнэ.
Тэгэхээр хамгийн түрүүнд...
Даалгаврууд
Дараа нь програмыг дамжуулах шугаманд байрлуулахад туслах хэд хэдэн даалгаврыг бий болгоцгооё. Эхний даалгавар - application_manifests_task - манай програмын k8s хавтсанд байгаа Kubernetes нөөцийн (үйлчилгээ, байршуулалт, маршрут) YAML-ийг ашиглах үүрэгтэй. Хоёрдахь ажил – 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 дотоод бүртгэл рүү түлхэх болно, учир нь та NodeShift ашиглан програмуудаа байршуулах үед OpenShift яг үүнийг хийдэг. .
Энэ бүхнийг бид яаж мэдсэн юм бэ гэж та асууж байна уу? -аас
Тэгэхээр одоо 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-pipeline нэрийн талбарт байрлахыг заадаг. Хэрэв та өөр нэрийн зай ашиглаж байгаа бол энэ тохиргоог өөрчлөхөө бүү мартаарай.
Эцэст нь хэлэхэд, бидэнд хэрэгтэй хамгийн сүүлийн эх сурвалж нь мөн төрлийн зураг байх бөгөөд энэ нь байршуулах явцад ашиглагдах эцсийн 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
Дахин хэлэхэд, энэ нөөц нь зургийг webapp-pipeline нэрийн талбар дахь дотоод OpenShift бүртгэлд хадгалдаг болохыг анхаарна уу.
Эдгээр бүх нөөцийг нэг дор үүсгэхийн тулд бид үүсгэх командыг ашиглана:
$ 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 resource) ба гаралт (built-web-application-image resource) параметрүүдийг авдаг. Бид мөн өөрөө гарын үсэг зурсан гэрчилгээг ашиглаж байгаа тул 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
Өмнөх даалгаврын нэгэн адил бид нөөцийг дамжуулж байгаа боловч одоо энэ нь баригдсан вэб-аппликейшн-зураг (бидний өмнөх даалгаврын гаралт) юм. Мөн гаралт болгон бид зургийг дахин тохируулна. Энэ ажлыг өмнөхийн дараа гүйцэтгэх ёстой тул бид 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
Дараагийн хоёр даалгавар нь манай вэб програмын k8s лавлах дахь үйлчилгээ, чиглүүлэлт, байршуулалтын YAML файлуудыг ашиглах, мөн шинэ зураг үүсгэх үед энэ байршуулалтыг шинэчлэх үүрэгтэй. Бид өгүүллийн эхэнд эдгээр хоёр кластерийн ажлыг тодорхойлсон.
Конвейерийг эхлүүлж байна
Тиймээс бидний дамжуулах хоолойн бүх хэсгүүд үүссэн бөгөөд бид үүнийг дараах тушаалаар ажиллуулна.
$ tkn pipeline start build-and-deploy-react
Энэ үе шатанд командын мөрийг интерактив байдлаар ашигладаг бөгөөд та түүний хүсэлт бүрийн хариуд тохирох нөөцийг сонгох хэрэгтэй: git нөөцийн хувьд web-application-repo, дараа нь эхний зургийн эх сурвалжийн хувьд баригдсан вэб програмыг сонгоно уу. -зураг, эцэст нь, хоёр дахь зургийн эх сурвалжийн хувьд – 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.
Зураг 1. Дамжуулах хоолойнуудыг тоймлох.
Гүйж буй дамжуулах хоолой дээр дарахад 2-р зурагт үзүүлсэн шиг нэмэлт мэдээлэл гарч ирнэ.
Цагаан будаа. 2. Дамжуулах хоолойн тухай нэмэлт мэдээлэл.
Дэлгэрэнгүй мэдээлэл авсны дараа та харагдац дээр ажиллаж байгаа програмуудыг харж болно Топологи, 3-р зурагт үзүүлснээр.
Зураг 3. Эхэлсэн pod.
Зургийн 4-т үзүүлсэн шиг дүрсний баруун дээд буланд байгаа тойрог дээр дарахад манай програм нээгдэнэ.
Цагаан будаа. 4. React програмыг ажиллуулж байна.
дүгнэлт
Тиймээс бид OpenShift дээр өөрийн програмын хөгжүүлэлтийн серверийг хэрхэн ажиллуулж, дотоод файлын системтэй синхрончлохыг харуулсан. Мөн бид OpenShift Pipelines ашиглан гинжлэгдсэн загварыг хэрхэн загварчлах талаар авч үзсэн. Энэ нийтлэлийн бүх жишээ кодыг олж болно
Нэмэлт нөөц (EN)
- Үнэгүй цахим ном
"OpenShift дээрх хөгжүүлэлт: тэвчээргүй хүмүүст зориулсан гарын авлага" Red Hat OpenShift Application Runtimes болон Istio ашиглан контейнер төвтэй Node.js програмуудыг бүтээх Chrome DevTools ашиглан OpenShift дээр Node.js програмуудыг дибаг хийж байна OpenShift дээр Express програмыг эхнээс нь эзэмших гурван тушаал Red Hat OpenShift Application Runtimes-ийн нэг хэсэг болох Node.js-ийн нийтлэг хувилбарын зарлал Prometheus ашиглан OpenShift дээр Node.js програмуудыг хянах - Бусад нийтлэлүүд
OpenShift болон Kubernetes Red Hat вэбсайт дээр
Удахгүй болох вэбинаруудын зарлал
Бид Red Hat OpenShift Container Platform болон Kubernetes-ийг ашиглан уугуул туршлагын талаар баасан гаригт цуврал вебинаруудыг эхлүүлж байна.
28-р сарын XNUMX, вебинар Эзэн хаан "Оператор": OpenShift болон Kubernetes дахь операторууд 11-р сарын XNUMX, DeploymentConfig vs Deployment – OpenShift-д зориулсан програмуудыг бүтээх, байрлуулах ид шид. Есдүгээр сарын 25, Red Hat OpenShift болон Machine API Аравдугаар сарын 9, Ачаалал гэнэт нэмэгдсэнийг хэрхэн даван туулах вэ Аравдугаар сарын 23, Embedded Jenkins, Pipeline-builds, Tekton in Red Hat OpenShift Container Platform
Эх сурвалж: www.habr.com