zkt21/sk1
2021-05-24 22:01:34 +02:00
..
nginx sk 2021-05-24 19:48:55 +02:00
web sk 2021-05-24 19:48:55 +02:00
.env sk 2021-05-24 19:48:55 +02:00
data-deployment.yaml sk 2021-05-24 19:48:55 +02:00
docker-compose.yml sk 2021-05-24 19:48:55 +02:00
env-configmap.yaml sk 2021-05-24 19:48:55 +02:00
nginx-deployment.yaml sk 2021-05-24 19:48:55 +02:00
postgres-deployment.yaml sk 2021-05-24 19:48:55 +02:00
README.md re 2021-05-24 21:53:19 +02:00
start-app.sh start 2021-05-24 22:01:34 +02:00
stop-app.sh sk 2021-05-24 19:48:55 +02:00
web-deployment.yaml sk 2021-05-24 19:48:55 +02:00

Jednoducha message web aplikacia pouzivajuca Flask, Nginx a Postgres.

Prerobil som aplikaciu zo zadania z1. Aplikacia obsahuje 3 sluzby. Web, Nginx a Postgres. start skriptom start-app.sh a zastavenie stop-app.sh Vsetky sluzby, persistent volumes aj deploymenty bezia podla minikube Kubernetes GUI spravne, avsak GUI stranku aplikacie neviem najst/nespusta sa spravne. Myslim ze ide o nejaky networking problem kedze ta ista aplikacia bez Kubernetes funguje spravne. Myslim ze porty mam exposnute spravne, viem to zistit prikazom "kubectl describe services". Tam vidime ze service "web" je exposnuty na porte 8000 ako chceme, napriklad na lokalnej adrese 127.17.0.7:8000. V browseri vsak na tejto adrese nie je frontend ako by som ocakaval. Ak budete mat cas niekedy, velmi by mi pomohlo ak by ste so mnou na to pozreli, kedze toto by som chcel deploynut aj na public cloud v ramci skusky.

Sucastou su 4 .yaml skripty ktore sa aplikuju do Kubernete start-app skriptom.

ngingx-deployment.yaml: Zakladny deployment ktory vytvori pod Service nginx pouzivany podom Persiste volume claim ako trvale ulozisko

postgres-deployment.yaml: Deployment + service

web-deployment.yaml: Deployment + service + PVC Prave v tomto yaml subore bude zrejme chyba. Neviem vsak identifikovat kde, kedze podla niekolkych navodov exposujem port webu spravne a aj je zobrazeny "describe services" prikazom.

stop-app.sh odstrani vsetky sucasti vratane lokalnych persistent volumes.

Po vytvoreni imagov nahrame pushujeme image do Azure cloud prostredia:

docker tag postgres:latest registermato.azurecr.io/postgres:latest docker push registermato.azurecr.io/postgres:latest

docker tag z2_nginx registermato.azurecr.io/z2_nginx docker push registermato.azurecr.io/z2_nginx

docker tag z2_web registermato.azurecr.io/z2_web docker push registermato.azurecr.io/z2_web

az container create --resource-group mrg --name mycontainer --image registermato.azurecr.io/z2_nginx:latest --dns-name-label mato-demo --ports 8080 az container create --resource-group mrg --name mycontainer2 --image registermato.azurecr.io/z2_web:latest --dns-name-label mato-demo2 --ports 80 az container create --resource-group mrg --name mycontainer3 --image registermato.azurecr.io/postgres:latest --dns-name-label mato-demo3 --ports 5432

Vytvorene kontajnery bezia a zdaju sa byt v poriadku, avsak frontend, tak ako pri 2. zadani nefunguje.