Dockers er en isoleret virtuel maskine som indeholder OS, software og applikationen som køres i containers. Det gode ved Dockers er at applikationerne køres i et isoleret miljø, så de kommer til at køre ens på alle infrastrukturer og operativsystemer som Windows, Linux og Mac. Containerne henter informationerne fra ”Docker image” som er opbygget over LXC(Linux containers code) og kan operere på alle cloud server udbydere. Fordelene ved at bruge ”Docker Engine” systemet er bl.a. at containerne dele resurserne på den enkelte kennel eller maskine uden en forudbestemt resurse tildeling, som hvis du skulle have applikationen kørerne på en isoleret VM-maskine. Det minimere resursespildet og betyder man kan køre flere applikationer/containers på samme maskine. Man kan sige Docker består af færre niveauer og hvis man skal beskrive Dockers som analogi, vil Virtuel maskine(VM) betragtes som huse, hvor Dockers containers er som lejligheder. Huse er fuldt ud isoleret for ubudne gæster, de har også deres egne infrastruktur bad, køkken, stue og soveværelse. Dockers har delt infrastruktur og vil kun gøre brug af de resurser, hvis du for eksempel kun bruger bad og soveværelse og ikke bruger stue og køkken, som andre applikationer i stedet kunne bruge. Det at du kan customize din lejlighed til dit præcise behov og deler infrastrukturen med andre beboer som opgangen VVS-installationen og hoveddøren gøre resursespildet minimalt. Anbefalingen ville være hvis du har en klient eller kunde som køre flere programmer eller applikationer, brug en Virtuel maskine/server for at køre det hele i et økosystem. Det er godt at holde sine kunder adskilte og gør det hele mere overskueligt. Dockers er klart anbefalingsværdigt hvis du har nogle applikationer som ikke har med en specifik kunde at gøre og det skal være fleksibelt, hvor du måske gerne vil skifte infrastruktur engang imellem. Docker er bygget over Build-Ship-Run princippet som gør formatet utrolig fleksibelt, brugervenlig og bærbart.
- Isoleret Virtuel maskine (altid samme environment)
- Holde projekterne adskilte
- Software containerization platform
- Provides abstraction of operating system level virtualization
- Laver et image som man kan gøre på andre server og maskine uden for meget opsætning
- Docker image sender så informationen ud i containers som køres som en virtuel maskine
- Docker engine i stedet for hypervisor
- Primære forskel er at virtuel machines er forudbestemt med hvor mange resurser den er tildelt. Containers har ikke en forudbestemt resurse limit og vil bruge resurserne alt efter behov på den enkelte server, hvilke gør dockers mere effektiv og fleksibel ved brug af resurser
- Dockers køres som et isoleret system men deler alle resurserne med andre container på den enkelte server,
- Dockers kan køre på alle operativsystemer og alle infrastrukturer og alle cloud server
- LXC (linux containers)
- Start op i millisekunder i stedet for miniuter
- Isolering af applikationer og ikke så godt hvis man vil isolere en kundes økosystem
- Build – ship -run