![]() | |
Original skaber(e) | Solomon Hykes |
---|---|
Udvikler(e) | Docker, Inc. |
Udgivet | 13. marts 2013 (11 år) |
Stabil version | 25.0.4[1] (7. marts 2024 (0 år)) |
Skrevet i | Go[2] |
Platform | x86-64 og ARM |
Type | Virtualisering på styresystemniveau |
Licens | Apache-licens 2.0 |
Hjemmeside | www.docker.com |
Systemkrav | Linux, Windows eller macOS; på ikke-Linux-platforme anvender Docker en virtuel maskine med Linux til at køre containere.[3][4] |
Docker er et open-source-projekt, som automatiserer ibrugtagning af computerprogrammer (med miljø) inden i softwarecontainere, ved at tilvejebringe et yderligere abstraktionslag og automation af virtualisering på styresystemniveau på Linux, OS X og Microsoft Windows.[5][6] Docker anvender resurseisolations-egenskaber i Linux-kernen, såsom cgroups og kernel-namespaces, samt et union-capable filsystem såsom aufs og andre[7] for at tillade uafhængige "containere" at køre inden i en enkelt Linux-instans, hvilket mindsker omkostninger ved start og vedligeholdelse af virtuelle maskiner.[8]
Linux-kernens understøttelse af namespaces[9] isolerer det meste af en applikations perspektiv af styresystemets miljø, inklusive proces-træer, datanet, user IDs og mountede filsystemer, mens kernens cgroups yder resursebegrænsning, inklusive CPU, hukommelse, block I/O og datanet. Siden version 0.9 har Docker inkluderet programbiblioteket libcontainer som Dockers egen måde til at anvende virtualiseringsfaciliteter ydet af Linux-kernen, udover at anvende abstraherede virtualiseringsgrænseflader via libvirt, LXC (Linux Containers) og systemd-nspawn.[10][11][12]