12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- apiVersion: build.openshift.io/v1
- kind: BuildConfig
- metadata:
- name: node-server
- spec:
- source:
- type: Dockerfile
- dockerfile: |
- FROM registry.ocp4.example.com:8443/ubi8/nodejs-16:latest
- RUN echo "const http = require('http'); \
- const hostname = '0.0.0.0'; \
- const port = 4000; \
- const server = http.createServer((req, res) => { \
- res.statusCode = 200; \
- res.setHeader('Content-Type', 'text/plain'); \
- res.end('Hello World'); \
- }); \
- server.listen(port, hostname, () => { \
- console.log(\`Server running: \${hostname}:\${port}\`); \
- }); \
- " > server.js
- EXPOSE 4000
- CMD ["node", "server.js"]
- strategy:
- type: Docker
- output:
- to:
- kind: ImageStreamTag
- name: node-server:latest
- triggers:
- - type: ConfigChange
- ---
- apiVersion: image.openshift.io/v1
- kind: ImageStream
- metadata:
- name: node-server
- spec:
- tags:
- - name: latest
- importPolicy:
- insecure: true
- ---
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: node-server
- spec:
- replicas: 1
- selector:
- matchLabels:
- app: node-server
- template:
- metadata:
- labels:
- app: node-server
- spec:
- containers:
- - name: node-server
- image: image-registry.openshift-image-registry.svc:5000/deploy-introduction/node-server:latest
- ports:
- - containerPort: 80
- ---
- apiVersion: v1
- kind: Service
- metadata:
- name: node-server
- spec:
- selector:
- app: node-server
- ports:
- - protocol: TCP
- port: 4000
- targetPort: 4000
- type: ClusterIP
- ---
- apiVersion: route.openshift.io/v1
- kind: Route
- metadata:
- name: node-server
- spec:
- port:
- targetPort: 4000
- to:
- kind: Service
- name: node-server
|