Linux containers har været fremme i noget tid, men i de sidste par år har det virkeligt taget fart. Flere og flere applikationer har en docker container, hvilket gør det hele meget nemmere at installere og administrere.
Opdateret 13. Juni 2017
Personligt er jeg begyndt at smide de fleste af mine applikationer i Docker containers. Seafile, Databaser, Rtorrent, Minecraft server, sites osv. Ja, Linuxbloggen her kør også i en container.
En container minder lidt om en virtuel server, men er langt fra det samme. En applikation er “contained” inde i en container og kan kører helt upåvirket af andet software på serveren. Alt hvad applikationen skal bruge for at fungere, findes inde i containeren.
Samtidig skal der ikke installeres andet på host serveren end Docker.
Du skal se en container mere som en selvstændig process på din server. Den deler ressourcer sammen med host serveren og de andre containers.
Docker har en masse dokumentation, så jeg vil ikke gå i dybden med det. I dette indlæg vil jeg vise hvordan du installer Docker og lave et kort eksempel.
Du kan se listen med Supported Platforms her. Der er også installations guides til de forskellige platforme, hvis du trykker på navnet.
Docker installation
Denne guide tager udgangspunkt i Debian 8 og 9 (Jessie/Stretch). Hvis du har ældre versioner af Docker installeret som
Installer nedenstående pakker.
sudo apt-get install apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-common
Tilføj Dockers GPG Key
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
Tilføj deres repository.
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
Opdater APT
sudo apt-get update
Installer Docker
sudo apt-get install docker-ce
Docker er nu installeret.
For at undgå at bruger sudo hver gang du skriver en Docker kommando kan du smide din bruger i docker gruppen. Log ud og ind igen for at det tager effect.
sudo usermod -a -G docker brugernavn
Test Eksempel
Med Docker kan man lave sine egne containers og push dem til et Docker registry. Man kan sætte sit eget registry op eller bruge en udbyder. Der findes forskellige gratis udbydere, Dockers egen er https://hub.docker.com. Der kan du søge efter den container du skal bruger og pull den.
I dette eksempel starter vi en container med en webserver, som viser “Hello World”. Det image vi bruger er
For at starte en container bruger vi
docker run -p 8080:80 -d tutum/hello-world
-p 8080:80 – Her bliver containers port 80 mapped til serverens port 80.-d – Fortæller Docker at containeren skal kører i daemon mode.tutum/hello-world – Er navnet på det image vi vil bruge.
Åben din browser, gå til