3 Commits

Author SHA1 Message Date
9f87869197 Se mejora el ejercicio de la clase 5 2022-11-14 13:00:24 -06:00
f1391bde3d Clase 5 2022-10-10 22:46:45 -06:00
fb9e6b7fa8 Clase 4 2022-10-10 22:36:02 -06:00
23 changed files with 255 additions and 0 deletions

View File

@ -0,0 +1,47 @@
apiVersion: v1
kind: Namespace
metadata:
name: hello
---
apiVersion: v1
kind: Service
metadata:
name: my-hello-svc
namespace: hello
labels:
app: hello
spec:
type: ClusterIP
selector:
app: hello
ports:
- port: 80
targetPort: 8080
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-hello
namespace: hello
labels:
app: hello
spec:
replicas: 2
selector:
matchLabels:
app: hello
template:
metadata:
labels:
app: hello
spec:
containers:
- name: hello
image: gcr.io/google-samples/hello-app:1.0
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 8080

View File

@ -0,0 +1,47 @@
apiVersion: v1
kind: Namespace
metadata:
name: nginx
---
apiVersion: v1
kind: Service
metadata:
name: my-ngnix-svc
namespace: nginx
labels:
app: nginx
spec:
type: ClusterIP
selector:
app: nginx
ports:
- port: 80
targetPort: 80
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-nginx
namespace: nginx
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 80

13
Clase 4/README.md Normal file
View File

@ -0,0 +1,13 @@
# Clase 4
![Diap1](./img/Diap1.png)
![Diap2](./img/Diap2.png)
![Diap3](./img/Diap3.png)
![Diap4](./img/Diap4.png)
![Diap5](./img/Diap5.png)
![Diap6](./img/Diap6.png)
![Diap7](./img/Diap7.png)
![Diap8](./img/Diap8.png)
![Diap9](./img/Diap9.png)
![Diap10](./img/Diap10.png)
![Diap11](../img/Agradecimiento.png)

BIN
Clase 4/img/Diap1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

BIN
Clase 4/img/Diap10.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

BIN
Clase 4/img/Diap2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 KiB

BIN
Clase 4/img/Diap3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
Clase 4/img/Diap4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

BIN
Clase 4/img/Diap5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

BIN
Clase 4/img/Diap6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

BIN
Clase 4/img/Diap7.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

BIN
Clase 4/img/Diap8.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

BIN
Clase 4/img/Diap9.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

View File

@ -0,0 +1,42 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: node-app-configmap
namespace: node-app
data:
# Mensaje personalizado
message: "Este es un mensaje personalizado."
# file-like keys
# Archivo de app (Código)
app.js: |
const express = require('express')
const app = express()
const port = process.env.PORT ? process.env.PORT : 80
app.get('/', (req, res) => {
res.send(process.env.MESSAGE ? process.env.MESSAGE : 'Hello World!')
})
app.get('/secret', (req, res) => {
res.send(process.env.SECRET ? process.env.SECRET : 'Hello Secret World!')
})
app.listen(port, () => {
console.log(`Example app listening on port ${port}`)
})
package.json: |
{
"name": "show-text-app",
"version": "1.0.0",
"description": "example app",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Alejandro Lembke Barrientos",
"license": "MIT",
"dependencies": {
"express": "^4.18.1"
}
}

View File

@ -0,0 +1,55 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: node-app
namespace: node-app
spec:
replicas: 1
selector:
matchLabels:
com.docker.project: node-app
app: node-app
template:
metadata:
labels:
com.docker.project: node-app
app: node-app
spec:
containers:
- name: node-app
image: node
command:
- "/bin/sh"
- "-c"
- "cd /app && npm install && node app.js"
env:
- name: PORT
value: "3000"
- name: SECRET
valueFrom:
secretKeyRef:
name: node-app-secret
key: secret
- name: MESSAGE
valueFrom:
configMapKeyRef:
name: node-app-configmap
key: message
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 3000
protocol: TCP
volumeMounts:
- name: app-files
mountPath: /app/app.js
subPath: app.js
- name: app-files
mountPath: /app/package.json
subPath: package.json
volumes:
- name: app-files
configMap:
name: node-app-configmap

View File

@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: node-app

View File

@ -0,0 +1,8 @@
apiVersion: v1
kind: Secret
metadata:
name: node-app-secret
namespace: node-app
type: Opaque
data:
secret: RXN0ZSBlcyB1biB0ZXh0byBzZWNyZXRvLg==

View File

@ -0,0 +1,16 @@
apiVersion: v1
kind: Service
metadata:
name: node-app-svc-lb
namespace: node-app
spec:
ports:
- name: 80-tcp
port: 80
protocol: TCP
targetPort: 3000
selector:
com.docker.project: node-app
type: LoadBalancer
status:
loadBalancer: {}

View File

@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: node-app-svc
namespace: node-app
labels:
app: node-app
spec:
type: ClusterIP
selector:
app: node-app
ports:
- port: 80
targetPort: 3000

9
Clase 5/README.md Normal file
View File

@ -0,0 +1,9 @@
# Clase 5
![Diap1](./img/Diap1.png)
![Diap2](./img/Diap2.png)
![Diap3](./img/Diap3.png)
Comando para entrar a la terminal de un contenedor:
`kubectl exec -n {namespace} --stdin --tty {pod-name} -- /bin/bash`
![Diap4](../img/Agradecimiento.png)

BIN
Clase 5/img/Diap1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

BIN
Clase 5/img/Diap2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

BIN
Clase 5/img/Diap3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB