nikola milojeviĆ devops engineer @ mailerlite modern ... · modern application deployment cycle...
TRANSCRIPT
![Page 1: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/1.jpg)
MODERN APPLICATION DEPLOYMENT CYCLE WITH GOLANG, DOCKER, KUBERNETES AND GOOGLE CLOUD
NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE
![Page 2: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/2.jpg)
O MENI
▸ DevOps Engineer u litvanskoj kompaniji Mailerlite (remote)
▸ 8 godina se bavim ovim poslom u različitim firmama i projektima (Grafart, Prodyna, Passbrains, Knip, United Cloud)
▸ Više na linkovima:
https://nikola.milojevic.me
https://www.linkedin.com/in/nikola-milojevic-lnkdin/
https://twitter.com/nklmilojevic
![Page 3: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/3.jpg)
ŠTA JE I ZAŠTO GOLANG?
▸ Sličan C-u po sintaksi, ali je moderniji
▸ Brz, integrisan garbage collection
▸ Binaries za maltene svaki set instrukcija procesora
▸ Razvio ga je Google
▸ Trenutno najplaćeniji programeri u USA su GoLang programeri
▸ Odličan community koji je još uvek u razvitku
![Page 4: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/4.jpg)
HELLO WORLD U GOLANG-U
![Page 5: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/5.jpg)
DOCKERIZOVANJE GOLANG APLIKACIJE
▸ Docker
▸ Multi-stage build
▸ Docker registry
▸ Github repository
▸ Travis CI
![Page 6: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/6.jpg)
MULTI STAGE BUILD
TRAVIS-CI
![Page 7: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/7.jpg)
KUBERNETES
▸ Helm
▸ Deployment manifest
▸ Service manifest (exposure)
▸ Certificate issuer
▸ Ingress manifest
▸ Certificate manifest
![Page 8: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/8.jpg)
DEPLOYMENT MANIFEST
![Page 9: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/9.jpg)
SERVICE MANIFEST
![Page 10: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/10.jpg)
CERTIFICATION ISSUER* Pre ovoga je potrebno instalirati cert-manager preko helm-a
![Page 11: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/11.jpg)
CERTIFICATE MANIFEST* Pre ovoga je potrebno instalirati nginx-ingress preko helm-a i dodati A record javni IP adrese nginx-ingressa u DNS
![Page 12: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/12.jpg)
NGINX INGRESS
![Page 13: NIKOLA MILOJEVIĆ DEVOPS ENGINEER @ MAILERLITE MODERN ... · modern application deployment cycle with golang, docker, kubernetes and google cloud nikola milojeviĆ devops engineer](https://reader034.vdocuments.us/reader034/viewer/2022042223/5ec98b73b83f5f77ec2d4a51/html5/thumbnails/13.jpg)
LINKOVI KA REPOZITURIJUMIMA
▸ https://github.com/omniouswhooshing/mday-golang-hello-world
▸ https://github.com/omniouswhooshing/mday-kubernetes-manifests