javantura v2 - dock your apps - tomislav klišanić, matija folnović

17

Category:

Documents


1 download

TRANSCRIPT

Page 1: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović
Page 2: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Tko smo mi?

• Matija Folnović o developer

• Tomislav Klišanić o developer

• CROZ d.o.o.

• 5+ godina iskustva (… zajedno)

Page 3: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Docker

• > 15 000 Github zvjezdica

• 20 milijuna preuzimanja

• > 30 000 „Dockerized” aplikacija na Docker Hub-u

• 113 grupa za druženje u 43 zemlje

Page 4: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Zašto ne VM?

Page 5: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Rad s Dockerom

Page 6: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Dockerfile

Page 7: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Slojevi?!?

Page 8: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Spajanje

• Mapiranje network portova

docker run -d -p 5000:5000 web python app.py

• Linkovi omogućavaju spremnicima da razgovaraju jedan s drugim i sigurno prenose informacije

• --link

• docker run -d -P --name web --link db:db web

python app.py

Page 9: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Upravljanje podacima Data Volume

• Data Volume – specijalno dizajniran direktorij unutar

jednog ili više Docker spremnika

• docker run -d -P --name web -v /data-volume app python app.py

• VOLUME naredba

• Direktorij sa hosta kao Data Volume

Page 10: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Upravljanje podacima – Data Volume Container

Page 11: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Upravljanje podacima Data Volume Container

• docker run -d -v /dbdata --name dbdata busybox

• docker run -d --volumes-from dbdata --name db postgres

• docker run -d -P --name app1 --link db:db …

• docker run -d -P --name app2 --link db:db …

Page 12: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Docker API & docker-gen

• Docker Remote API – zamjenjuje command line

• Popis endpointa za rad sa spremnicima

npr…GET /containers/json

• docker-gen

• Koristi Docker meta-data

• Koristi se za: centralizirano logiranje, rotaciju logova, reverse proxy…

Page 13: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Nginx Reverse Proxy For Docker

Page 14: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Nginx Reverse Proxy For Docker

Page 15: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Primjer arhitekture

Page 17: Javantura v2 - Dock your apps - Tomislav Klišanić, Matija Folnović

Pitanja ?