แฒกแแแแแ แงแแแแแก! แแก แแ แแก แฉแแแแ แกแแ แแแก แแแแ แ แแแกแขแ, แ แแแแแจแแช แฉแแแ แแแฉแแแแแแ, แแฃ แ แแแแ แฃแแแ แแแแแแแแแกแแ แแแแแแแแ แแแ แแแ แแแแแแแชแแแแ Red Hat OpenShift-แแ.
แฌแแแ แแแกแขแจแ แแแแแ แจแแแแฎแแ แแฎแแแ S2I (source-to-image) แจแแแฅแแแแแแก แแแแฏแแก แจแแกแแซแแแแแแแแแก, แ แแแแแแช แแแแแฃแแแแแแแ OpenShift แแแแขแคแแ แแแแ แแแแแแแแ แแแ แแแ แแแแแแแชแแแแแก แจแแกแแฅแแแแแแ แแ แแแแกแแแแแกแแแแแ. แจแแแแแ แฉแแแ แแแแแแขแแ แแกแแแ แแแแแแแชแแแก แกแฌแ แแคแแ แแแแแแแแแแก แแแแแ, แแฆแแก แแ แแแแแแฎแแแแแ, แแฃ แ แแแแ แแแแแแแงแแแแ S2I แกแฃแ แแแ, แ แแแแ แช โแกแฃแคแแโ แแจแแแแแแแก แกแฃแ แแแ แแ แแแแแแ แแแแแแ แแแ แแแแแแจแแ แแแฃแ OpenShift แแกแแแแแแแแแแ.
แแจแแแแแแแก แกแฃแคแแ แกแฃแ แแแ
แ แแแแ แช แแแ แแแ แแแฌแแแจแ แแฆแแแแจแแแ, แแแแแแแแ แแแ แแแ แแแแแแแชแแแแแก แฃแแแขแแกแแแแก แแฅแแก แแแ แแ แฌแแแแแฃแแ แแจแแแแแแแแแก แแขแแแ, แ แแแแแแช, แ แแแแ แช แฌแแกแ, แแกแ แฃแแแแก แแแแ แแชแแแแก, แ แแแแ แแชแแ แแแแแก แขแ แแแกแแแแแชแแ, แแ แแแแแฏแแ แแแ แคแแแแแแแก แจแแแ แแแแ แแ แแแแแคแแแแชแแ. แแ แแแแ แแชแแแแแก แจแแแแแแ แแแฆแแแฃแแ แคแแแแแแ - แแ แแก แแ แแก แกแขแแขแแแฃแ แ HTML, JavaScript แแ CSS - แแแแฎแแแ แแแแแแแแแแ แกแแฅแแฆแแแแแจแ. แแ แกแแฅแแฆแแแแแก แแแแแแ แแแแ แฉแแแฃแแแแ แแ แแแแแแแแแแฃแแแ แแแแแ, แแฃ แ แ build แแแกแขแ แฃแแแแขแแแ แแแแแแงแแแแแ, แฎแแแ React-แแกแแแแก แแก แแฅแแแแ ./build แกแแฅแแฆแแแแ (แแแแก แฃแคแ แ แแแขแแแฃแ แแ แแแแฃแแ แฃแแแแแแ แฅแแแแแ).
แฌแงแแ แ-แกแฃแ แแแ (S2I)
แแ แแแกแขแจแ แฉแแแ แแ แจแแแแฎแแแแ แแแแแก "แ แ แแ แแก S2I แแ แ แแแแ แแแแแแแงแแแแ แแแ" (แจแแแแซแแแแ แแแขแ แฌแแแแแแฎแแ แแแแก แจแแกแแฎแแ
แจแแแ แแแแก แแขแแแ
แแกแแแแแแแก แคแแแ แแฃแแแแแ แซแแแแแ แฐแแแแก แแแแก, แ แแช แฎแแแแ, แ แแแแกแแช แแฅแแแ แแฌแแ แแแแแ docker build-แก แแ แแแแแ แแแแ แแฎแแแ Docker แกแฃแ แแแแ. แจแแกแแแแแแกแแ, แแก แแขแแแ แฎแแแแ OpenShift แแแแขแคแแ แแแแ build-แแก แแแฌแงแแแแกแแก.
Web App Builder แกแฃแ แแแแก แจแแแแฎแแแแแจแ, แแก แแแกแฃแฎแแกแแแแแแแแ แแฅแแแแ แแแแแแแชแแแก แแแแแแแแแแฃแแแแแแแก แแแงแแแแแแแ แแ build-แแก แแแจแแแแแแ.
แ แแแแ แช แแแ แ แแแฅแแแ, แแแกแ แฃแแแแฃแแ, แฃแแแ แแจแแแแแฃแแ แแแแแแแชแแแก แแแแแแ แแแแ แแแแแแแแแแฃแแแ แแแแแ, แแฃ แ แ แแแกแขแ แฃแแแแขแแแก แแงแแแแแ. แแแแแแแแแ, React-แแก แจแแแแฎแแแแแจแ แแก แแฅแแแแ ./build แกแแฅแแฆแแแแ, แฎแแแ Angular แแแแแแแชแแแแแกแแแแก แแก แแฅแแแแ project_name/dist แกแแฅแแฆแแแแ. แแ, แ แแแแ แช แฃแแแ แแแฉแแแแแแแ แฌแแแ แแแกแขแจแ, แแแแแแแแแแ แแแ แแฅแขแแ แแแก แแแแแแ แแแแ, แ แแแแแแช แแแงแแแแแฃแแแ แแแแฃแแแกแฎแแแแแ แแกแแแแแแ, แจแแแซแแแแ แแแแแแฌแแ แแก OUTPUT_DIR แแแ แแแแก แชแแแแแแก แแแจแแแแแแ. แแแ แแแ, แ แแแแแ แแแแแแแแแแ แกแแฅแแฆแแแแแก แแแแแแ แแแแ แแแแกแฎแแแแแแแ แฉแแ แฉแแแแ แฉแแ แฉแแจแ, แแฅแแแ แฃแแ แแแแ แแแแแแแแ แแแ แแแแแแฃแจแแแแแฃแ แแแแแแแแแแก แแแแแกแแฎแฃแแแแแก แกแขแแแแแ แขแฃแ แกแแฅแแฆแแแแแจแ, แแแ แซแแ /opt/apt-root/output. แแก แแแแจแแแแแแแแแแ แแ แกแขแแขแแแก แแแแแ แฉแแแ แแแกแแแแแแ, แแแแ แแ แแฎแแ แแแแแ แกแฌแ แแคแแ แแแแแแฎแแแแ แจแแแแแ แแขแแแแ - แแแจแแแแแก แคแแแแก.
แแแจแแแแแก แคแแแ
แแก แแขแแแ แฎแแแแ แแแจแแ, แ แแแแกแแช แแแแแซแแฎแแแ แฎแแแแ แแแแแ แแก แแแจแแแแแแ แแฎแแ แกแฃแ แแแแ, แ แแแแแแช แจแแแฅแแแ แแกแแแแแแแก แแขแแแแ. แแแแแ แฎแแแแ OpenShift แแแแขแคแแ แแแแ แแแแแแแแแแกแแก. แแแแฃแแแกแฎแแแแ
แแก แแแแแแ แแแ แแแ แแแแแแแชแแแแแก แกแฌแ แแคแแ แแแแกแแแแแกแแแแแ, แแแแ แแ แแแแแแแ แแ แแ แแก แ แแแแแแแแแแฃแแ แกแขแแขแแแฃแ แ แจแแแแแ แกแแก แแ แแแแ แแแแแงแแแแแ. แแกแ, แ แแแแแ แกแแแแแแแแแแจแ แฉแแแ แแฎแแแแ แกแขแแขแแแฃแ แจแแแแแ แกแก แแแแกแแฎแฃแ แแแแ, แแ แแแญแแ แแแแ Node.js แแแแแกแขแแแแ แแแฃแแ แฉแแแแ แกแฃแ แแแแก แจแแแแแ - แกแแแแแ แแกแ แแฅแแแแ แแแ แกแแ แแแ แ.
แกแฎแแ แกแแขแงแแแแแ แ แแ แแแฅแแแ, แแฌแงแแแแกแแก แแแญแแ แแแแ แแ แแ แ แแ, แจแแกแ แฃแแแแแกแแก - แแแแ แ. แแ แกแแขแฃแแชแแแจแ, แฏแแญแแฃแ แ แแแแแแแแแแ แแแแแแแแแ.
แแแฏแแญแแฃแแ แแแแแแแแแแ
แแแแแ แฌแแ แแ
โแแ แ แแกแแแแแแ แจแแแซแแแแ แแ แแแแแแแแแ แแงแแก แแแแแแจแแ แแแฃแแ, แแ แแ แฅแแแแก แจแแแแแแแ แแ แแแฃแแก, แฎแแแ แแแแ แ แแแกแแแแซแแแแก แแ แแ แแแฃแแก แชแแแแแฃแ แกแฃแ แแแจแ, แ แแแแแแช แแแแแแงแแแแแ แแ แแ แแแฃแแแก แแแกแแจแแแแแ.
แกแฎแแ แกแแขแงแแแแแ แ แแ แแแฅแแแ, แฉแแแ แจแแแแแซแแแ แแแแแแแงแแแแ Web App Builder-แแก แกแฃแ แแแ แฉแแแแ build-แแก แแแกแแจแแแแแ แแ แจแแแแแ แแแแแแแงแแแแ แแแ แกแแ แแแ แแก แกแฃแ แแแ, แแแแแ NGINX, แฉแแแแ แจแแแแแ แกแแก แแแกแแแกแแฎแฃแ แแแแแ.
แแแ แแแแ, แฉแแแ แจแแแแแซแแแ แแแแแแแงแแแแ Web App Builder แกแฃแ แแแ, แ แแแแ แช โแกแฃแคแแโ แแจแแแแแแแ แแ แแแแแ แแ แแก แแแฅแแแแแก แแชแแ แ แแแจแแแแแก แกแฃแ แแแ.
แแฎแแ แแแแแ แจแแแฎแแแแ แแแแก แแแแแ แแขแฃแแ แแแแแแแแแ.
แขแ แแแแแแแกแแแแก แแแแแแแงแแแแแ
แแก แแแแแแฎแแแ แแแ แงแแแแแคแ แแก แจแแแ แแแแจแ
แแแแแ แจแแแฎแแแแ แแ แคแแแแก แฃแคแ แ แแแขแแแฃแ แแ แแ แแแแแฌแงแแ แแแ แแแแขแ แแแแก แแแแงแแคแแแแแแ.
parameters:
- name: SOURCE_REPOSITORY_URL
description: The source URL for the application
displayName: Source URL
required: true
- name: SOURCE_REPOSITORY_REF
description: The branch name for the application
displayName: Source Branch
value: master
required: true
- name: SOURCE_REPOSITORY_DIR
description: The location within the source repo of the application
displayName: Source Directory
value: .
required: true
- name: OUTPUT_DIR
description: The location of the compiled static files from your web apps builder
displayName: Output Directory
value: build
required: false
แแฅ แงแแแแแคแแ แ แกแแแแแแ แแแแแแแ, แแแแ แแ แฆแแ แก แงแฃแ แแแฆแแแ แแแแฅแชแแแ OUTPUT_DIR แแแ แแแแขแ แก. แฉแแแแก แแแแแแแแจแ React แแแแแแแชแแแกแแแแก แกแแแแ แแแฃแแ แแ แแคแแ แแ, แ แแแแแ React แแงแแแแแก แแแแฃแแแกแฎแแแ แแแแจแแแแแแแแก, แ แแแแ แช แแแแแแแแแแ แกแแฅแแฆแแแแ, แแแแ แแ Angular-แแก แแ แกแฎแแ แ แแแแก แจแแแแฎแแแแแจแ, แแก แแแ แแแแขแ แ แกแแญแแ แแแแแกแแแแแ แฃแแแ แจแแแชแแแแแก.
แแฎแแ แแแแแ แแแแแแฎแแแแ ImageStreams แแแแงแแคแแแแแแก.
- apiVersion: v1
kind: ImageStream
metadata:
name: react-web-app-builder // 1
spec: {}
- apiVersion: v1
kind: ImageStream
metadata:
name: react-web-app-runtime // 2
spec: {}
- apiVersion: v1
kind: ImageStream
metadata:
name: web-app-builder-runtime // 3
spec:
tags:
- name: latest
from:
kind: DockerImage
name: nodeshift/ubi8-s2i-web-app:10.x
- apiVersion: v1
kind: ImageStream
metadata:
name: nginx-image-runtime // 4
spec:
tags:
- name: latest
from:
kind: DockerImage
name: 'centos/nginx-112-centos7:latest'
แแแแแฎแแแแ แแแกแแแ แแ แแแแแฎแ แกแฃแ แแแแแก. แแกแแแ แแ แแแ แแแแแกแแแฆแแ แแแ, แ แแแแ แช Docker แกแฃแ แแแแแ แแ แแฅแแแ แแแแแแ แฎแแแแแ, แกแแแแแ แแแแแก แแกแแแ.
แแแกแแแ แกแฃแ แแแ แแ แแก web-app-builder แแ แแก แแแแแก nodeshift/ubi8-s2i-web-app-แแแ, แ แแแแแแช แแแแแจแแฃแแแ 10.x-แแ.
แแแแแฎแ แแ แแก NGINX แกแฃแ แแแ (แแแ แกแแ 1.12) แฃแแฎแแแกแ แขแแแแ
แแฎแแ แแแแแ แจแแแฎแแแแ แแแ แแแ แแ แกแฃแ แแแก. แแกแแแ แแ แแแ แชแแ แแแแแ แแแกแแฌแงแแกแจแ แแ แแฅแแแแแ แแฎแแแแ แแจแแแแแแแแแก แคแแแแจแ. แแแ แแแแ แกแฃแ แแแ, react-web-app-builder, แแฅแแแแ แแกแแแแแแแก แแแแแฏแแก แจแแแแแ, แ แแแแแแช แแแแแ แแแแแแแก แแแ-แแแแแแแชแแแก แจแแแฅแแแแ-แแแจแแแแแก แกแฃแ แแแก แแ แฉแแแแก แฌแงแแ แแก แแแแก. แแแแขแแ แแ แกแฃแ แแแแก แกแแฎแแแก แแแแแแแขแแ "-builder".
แแแแ แ แกแฃแ แแแ - react-web-app-runtime - แแฅแแแแ nginx-image-runtime แแ แแแแแแ แแ แคแแแแแก แแแแ แแแแแแแแก แจแแแแแ react-web-app-builder แกแฃแ แแแแแแ. แแก แกแฃแ แแแ แแกแแแ แแแแแงแแแแแฃแแ แแฅแแแแ แแแแแแแแแแก แแ แแก แแ แจแแแชแแแก แแฎแแแแ แแแ แกแแ แแแ แก แแ แฉแแแแ แแแแแแแชแแแก แกแขแแขแแแฃแ HTML, JavaScript, CSS.
แแแแแแฃแแ? แแฎแแ แแแแแ แจแแแฎแแแแ build-แแก แแแแคแแแฃแ แแชแแแแก แแ แชแแขแ แฃแคแ แ แแแแแแ แแแฎแแแแ.
แฉแแแแก แจแแแแแแก แแฅแแก แแ แ build แแแแคแแแฃแ แแชแแ. แแฅ แแ แแก แแแ แแแแ แแ แกแแแแแแ แกแขแแแแแ แขแฃแแแ:
apiVersion: v1
kind: BuildConfig
metadata:
name: react-web-app-builder
spec:
output:
to:
kind: ImageStreamTag
name: react-web-app-builder:latest // 1
source: // 2
git:
uri: ${SOURCE_REPOSITORY_URL}
ref: ${SOURCE_REPOSITORY_REF}
contextDir: ${SOURCE_REPOSITORY_DIR}
type: Git
strategy:
sourceStrategy:
env:
- name: OUTPUT_DIR // 3
value: ${OUTPUT_DIR}
from:
kind: ImageStreamTag
name: web-app-builder-runtime:latest // 4
incremental: true // 5
type: Source
triggers: // 6
- github:
secret: ${GITHUB_WEBHOOK_SECRET}
type: GitHub
- type: ConfigChange
- imageChange: {}
type: ImageChange
แ แแแแ แช แฎแแแแแ, 1-แแ แแขแแแแขแแก แฎแแแ แแแแแแก, แ แแ แแ แแแแกแขแ แฃแฅแชแแแก แจแแแแแ แแแแแแแกแแแแ แแแแแ react-web-app-builder แกแฃแ แแแแ, แ แแแแแแช แชแแขแ แแแ แ แแแแฎแแ ImageStreams แแแแงแแคแแแแแแจแ.
แฎแแแ, แกแแฎแแแฌแแแแแแ 2, แแแขแงแแแ, แกแแแแแ แแแแฆแแ แแแแ. แฉแแแแก แจแแแแฎแแแแแจแ, แแก แแ แแก git แกแแชแแแ แแ แแแแแแ แแแแ, ref แแ แแแแขแแฅแกแขแฃแ แ แกแแฅแแฆแแแแ แแแแแกแแแฆแแ แแแ แแ แแแ แแแแขแ แแแแ, แ แแแแแแแช แฃแแแ แแแแฎแแ แแแแแ.
3-แแแแ แฎแแแ แแ แแก แแก, แ แแช แฃแแแ แแแแฎแแ แแแ แแแแขแ แแแแก แแแแงแแคแแแแแแจแ. แแก แแแแขแแแก OUTPUT_DIR แแแ แแแแก แชแแแแแก, แ แแแแแแช แฉแแแแก แแแแแแแแจแ แแ แแก build.
แฎแแแ, แกแแฎแแแฌแแแแแแ 4, แแแแแแก, แ แแ แแแแแแงแแแแก แแแ-แแแแแแแชแแแก แจแแแฅแแแแแ-แแแจแแแแแก แกแฃแ แแแ, แ แแแแแแช แฃแแแ แแแแฎแแ ImageStream แแแแงแแคแแแแแแจแ.
แแ-5 แกแขแ แแฅแแแจแ แแแแฅแแแแแ, แ แแ แฉแแแ แแแแแแ แแแแแแแงแแแแ แแแแแขแแแแแ แแแแกแขแ แฃแฅแชแแ, แแฃ S2I แแแแแกแแฎแฃแแแแ แแฎแแ แก แฃแญแแ แก แแแก แแ Web App Builder-แแก แกแฃแ แแแก. แแแ แแแแ แแแจแแแแแกแแก, แแกแแแแแแแก แแขแแแแก แแแกแ แฃแแแแแก แจแแแแแ, แกแฃแ แแแ แจแแแแแฎแแแก node_modules แกแแฅแแฆแแแแแก แกแแแ แฅแแแ แคแแแแจแ. แจแแแแแ, แจแแแแแแ แแแจแแแแแแแ, แกแฃแ แแแ แฃแแ แแแแ แแแฎแกแแแก แแ แกแแฅแแฆแแแแแก, แ แแแ แจแแแชแแ แแแก แแจแแแแแแก แแ แ.
แแ แแแแแก, แฎแแแ, แกแแฎแแแฌแแแแแแ 6, แแฎแแแแ แ แแแแแแแแ แขแ แแแแ แแ แแแแกแแแแแก, แ แแ แแฌแงแแแ แแแขแแแแขแฃแ แแ แแแฃแจแแแก แฎแแแแ แฉแแ แแแแก แแแ แแจแ, แ แแแแกแแช แ แแฆแแช แแชแแแแแ.
แแแแแแแแแแจแ แแก แกแแแแแแ แกแขแแแแแ แขแฃแแ แแแแกแขแ แฃแฅแชแแแก แแแแคแแแฃแ แแชแแแ.
แแฎแแ แแแแแ แจแแแฎแแแแ แแแแ แ แแแแกแขแ แฃแฅแชแแแก แแแแคแแแฃแ แแชแแแก. แแก แซแแแแแ แฐแแแแก แแแ แแแแก, แแแแ แแ แแ แแก แแ แแ แแแแจแแแแแแแแแ แแแแกแฎแแแแแแ.
apiVersion: v1
kind: BuildConfig
metadata:
name: react-web-app-runtime
spec:
output:
to:
kind: ImageStreamTag
name: react-web-app-runtime:latest // 1
source: // 2
type: Image
images:
- from:
kind: ImageStreamTag
name: react-web-app-builder:latest // 3
paths:
- sourcePath: /opt/app-root/output/. // 4
destinationDir: . // 5
strategy: // 6
sourceStrategy:
from:
kind: ImageStreamTag
name: nginx-image-runtime:latest
incremental: true
type: Source
triggers:
- github:
secret: ${GITHUB_WEBHOOK_SECRET}
type: GitHub
- type: ConfigChange
- type: ImageChange
imageChange: {}
- type: ImageChange
imageChange:
from:
kind: ImageStreamTag
name: react-web-app-builder:latest // 7
แแกแ แ แแ, แแแแ แ build แแแแคแแแฃแ แแชแแ แแ แแก react-web-app-runtime แแ แแก แกแแแแแแ แกแขแแแแแ แขแฃแแแ แแฌแงแแแ.
แฎแแแ, แกแแฎแแแฌแแแแแแ 1, แแฎแแแ แแ แแคแแ แแ - แแก แฃแแ แแแแ แแแแแแก, แ แแ build-แแก แจแแแแแ แแแแแแกแแแฃแแแ react-web-app-runtime แกแฃแ แแแจแ.
แฎแแแ แฌแแ แฌแแ แแ 2, แ แแแแ แช แฌแแแ แแแแคแแแฃแ แแชแแแจแ, แแแฃแแแแแแก แกแแแแแ แฃแแแ แแแแฆแแ แฌแงแแ แแก แแแแ. แแแแ แแ แงแฃแ แแแฆแแแ แแแแฅแชแแแ, แ แแ แแฅ แฉแแแ แแแแแแแ, แ แแ แแก แกแฃแ แแแแแแ แแ แแก แแฆแแแฃแแ. แฃแคแ แ แแแขแแช, แแ แกแฃแ แแแแแแ, แ แแแแแแช แฉแแแ แแฎแแแฎแแ แจแแแฅแแแแแ - react-web-app-builder-แแกแแแ (แแแแแแแแฃแแแ 3-แแก แฎแแแจแ). แคแแแแแแ, แ แแแแแแแช แแแแแแ แแแแแแแงแแแแ, แแ แแก แแแแแกแแฎแฃแแแแแก แจแแแแแ แแ แแแแ แแแแแแ แแแแ แแฅ แแ แแก แแแแแแแแฃแแ 4-แแ, แฉแแแแก แจแแแแฎแแแแแจแ แแก แแ แแก /opt/app-root/output/. แแฃ แแแฎแกแแแ, แกแฌแแ แแ แแฅ แแแแฎแแแ แฉแแแแ แแแแแแแชแแแก แจแแฅแแแแก แจแแแแแแแแก แกแแคแฃแซแแแแแ แแแแแ แแ แแแฃแแ แคแแแแแแ.
แแแแแจแแฃแแแแแก แกแแฅแแฆแแแแ, แ แแแแแแช แแแแแแแแฃแแแ แขแแ แแแแจแ แแขแแแแขแแ 5, แแ แแก แฃแแ แแแแ แแแแแแแแ แ แแแ แแฅแขแแ แแ (แแก แงแแแแแคแแ แ, แแแฎแกแแแแแ, แแฃแจแแแแก แ แแฆแแช แฏแแแแกแแฃแ แแแแแจแ, แกแแฎแแแฌแแแแแแ OpenShift, แแ แแ แ แแฅแแแแก แแแแแแแแ แแ แแแแแแฃแขแแ แแ).
แกแขแ แแขแแแแแก แแแแงแแคแแแแแ - แฎแแแ 6-แแ - แแกแแแ แแกแแแแกแแ แแแ แแแแ build แแแแคแแแฃแ แแชแแแก. แแฎแแแแ แแแฏแแ แแ แแแแแ แแแ แแแแแแแงแแแแ nginx-image-runtime, แ แแแแแแช แฃแแแ แแแแฎแแ ImageStream แแแแงแแคแแแแแแจแ.
แแแแแแแก, แฎแแแ, แกแแฎแแแฌแแแแแแ 7, แแ แแก แขแ แแแแ แแแแก แแแแงแแคแแแแแ, แ แแแแแแช แแแฅแขแแฃแ แแแก แแ build-แก แงแแแแ แฏแแ แแ, แ แแแแกแแช แแชแแแแแ react-web-app-builder แกแฃแ แแแ.
แฌแแแแแฆแแแแ แจแแแแฎแแแแแจแ, แแก แจแแแแแแ แจแแแชแแแก แกแแแแแแ แกแขแแแแแ แขแฃแแ แแแแแแแแแแก แแแแคแแแฃแ แแชแแแก, แแกแแแ แ แแแแ แช แแแแกแแฎแฃแ แแแแแก แแ แแแ แจแ แฃแขแแแก, แแแแ แแ แฉแแแ แแ แแแแแแข แแแขแแแแแก แแ แจแแแแฎแแแแ. แแแฎแแแ แแแแแแแแแกแฌแแแแ, แ แแ แแแแแกแแฎแฃแแแแ, แ แแแแแแช แแแแแแแแแแ แแ แแก react-web-app-runtime แกแฃแ แแแ.
แแแแแแแชแแแก แแแแแแแแแ
แแฎแแ, แ แแแแกแแช แฉแแแ แแแแแแฎแแแแ แจแแแแแแก, แแแแฎแแ, แ แแแแ แแแแแแแงแแแแ แแแ แแแแแแแชแแแก แแแแกแแแแแกแแแแแ.
แฉแแแ แจแแแแแซแแแ แแแแแแแงแแแแ OpenShift แแแแแแขแแก แแแกแขแ แฃแแแแขแ, แกแแฎแแแฌแแแแแแ oc แฉแแแแ แจแแแแแแแก แแแแแกแแงแแแแแแแ:
$ find . | grep openshiftio | grep application | xargs -n 1 oc apply -f
$ oc new-app --template react-web-app -p SOURCE_REPOSITORY_URL=https://github.com/lholmquist/react-web-app
แแแ แแแแ แแ แซแแแแแ แแแแแ แแแชแแแฃแ แแแ แแแแก แกแฃแ แแแแ แแ แแก แแแแแแแแแแ แแฃแแ แแแแแแแ แแฃแแ แแแ แจแแแแแแแก แแแกแแซแแแแแ./openshiftio/application.yaml.
แแแแ แ แแ แซแแแแแ แฃแแ แแแแ แฅแแแแก แแฎแแ แแแแแแแชแแแก แแ แจแแแแแแแก แกแแคแฃแซแแแแแ.
แแ แแ แซแแแแแแแแก แแฃแจแแแแแก แจแแแแแ, แฉแแแ แแแแแแแฎแแแ, แ แแ แแแแฅแแก แแ แ แแกแแแแแแ:
แแ แแแแแ แฃแแแแแแ แแแแแฎแแแแแก แแแ แแแแ, แฉแแแ แแแแแแแฎแแแ แแแจแแแแฃแ แแแแก:
แแแแฌแแแแฃแแแ แแแฃแแแ แแ แฉแแแ แแแแแแแงแแแแ แฉแแแแก แแแแแแแชแแแจแ, แ แแแแแแช แแ แแก แแแแฃแแแกแฎแแแแ React App แแแแ แแ:
แแแแแแแขแ 1 แฌ
Angular-แแก แแแงแแแ แฃแแแแแกแแแแกแแช แแแแฅแแก
แแแแฃแจแ แแฅแแช แแแแแแ, แแแ แแ OUTPUT_DIR แชแแแแแแกแ.
แแแแแแแขแ 2 แฌ
แแ แกแขแแขแแแจแ แฉแแแ แแแแแแแงแแแแ NGINX, แ แแแแ แช แแแ แกแแ แแแ แ, แแแแ แแ แแแกแ แฉแแแแชแแแแแ Apache-แแ แกแแแแแแ แแแ แขแแแแ, แฃแแ แแแแ แจแแชแแแแแ แจแแแแแแ แคแแแแจแ
แแแกแแแแ
แแ แกแแ แแแก แแแ แแแ แแแฌแแแจแ แฉแแแ แแแฉแแแแแ, แแฃ แ แแแแ แกแฌแ แแคแแ แแแแแแแแแกแแ แแแแแแแแ แแแ แแแ แแแแแแแชแแแแ OpenShift แแแแขแคแแ แแแแ. แแฆแแก แฉแแแ แจแแแฎแแแแ แ แแก แแแแแแแก แแแ แแแแแแแชแแแก แกแฃแ แแแ แแ แ แแแแ แจแแแซแแแแ แแแกแ แจแแ แฌแงแแ แกแฃแคแแ แแแ แกแแ แแแ แแแ, แ แแแแ แแชแแ NGINX, แฏแแญแแฃแ แ แแแแกแขแ แฃแฅแชแแแแแก แแแแแงแแแแแแ, แฃแคแ แ แฌแแ แแแแแแกแแแแก แแแ แแแแแแแชแแแก แจแแกแแฅแแแแแแ. แแ แกแแ แแแก แจแแแแแ แแ แแแแ แกแขแแขแแแจแ แฉแแแ แแแฉแแแแแแ, แแฃ แ แแแแ แฃแแแ แแแฃแจแแแ แแแแแแแแ แแแแก แกแแ แแแ แ แแฅแแแแ แแแแแแแชแแแกแแแแก OpenShift-แแ แแ แฃแแ แฃแแแแแแงแแ แแแแแแฃแ แ แแ แแแกแขแแแชแแฃแ แ แคแแแแแแแก แกแแแฅแ แแแแแแชแแ.
แกแขแแขแแแแแก แแ แกแแ แแแก แจแแแแแ แกแ
- แแแฌแแแ X:
แ แแแแ แแแแแแแแกแแ แแแแแแแแ แแแ แแแ แแแแแแแชแแแแ แแฎแแแแ แ แแแแแแแแ แแแแแฏแแ ; - แแแฌแแแ 2: แ แแแแ แแแแแแแงแแแแ แแฎแแแ S2I แกแฃแ แแแ แแ แกแแแฃแแ HTTP แกแแ แแแ แแก แแแแฏแแ, แ แแแแ แแชแแ NGINX, แแกแแชแแ แแแฃแแ OpenShift แแกแแแแแแแก แแแแแงแแแแแแ แฌแแ แแแแแแก แแแแกแแแแแกแแแแแ;
- แแแฌแแแ 3: แ แแแแ แแแฃแจแแแ แแแแแแแแ แแแแก แกแแ แแแ แ แแฅแแแแ แแแแแแแชแแแกแแแแก OpenShift แแแแขแคแแ แแแแ แแ แกแแแฅแ แแแแแแชแแ แแแแฎแแแแแก แแแแแแแแ แแ แคแแแแฃแ แกแแกแขแแแแกแแแ.
แฒแแแแขแแแแแ แ แแกแฃแ แกแแแ
- แฃแคแแกแ แแแแฅแขแ แแแฃแแ แฌแแแแ
แแแแแแแแแ OpenShift-แแ . - แฒแแคแแ แแแชแแ
OpenShift แแ Kubernetes .
แฌแงแแ แ: www.habr.com