Containere har indlejret sig selv i it-landskabet. Faktisk har containerisering af applikationer og tjenester gjort det muligt for virksomheder at blive endnu mere agile, end de var før.

Og hvem ønsker ikke en smule mere agilitet for deres virksomhed?

Men hvad er en container? En container er en måde at rulle software sammen i små, selvstændige pakker, der indeholder alle de biblioteker og indstillinger, der er nødvendige for, at softwaren kan fungere, som om den var blevet installeret via standardmetoden. Hvis du f.eks. ønsker at implementere en NGINX-server, kan du i stedet for at installere serveren og alle dens afhængigheder på enten standardhardware eller virtuel hardware blot trække NGINX-aftrykket og implementere en container baseret på dette aftryk. På få sekunder har du den NGINX-webserver klar til at arbejde med.

Du tænker måske: “Hvorfor ikke bare bruge en virtuel maskine?” I modsætning til en virtuel maskine kræver en container ikke et fuldt udbygget operativsystem for at få den til at køre. Faktisk er containere platform-neutrale. Så længe du har et system, der understøtter din container, kan den implementeres. Endnu bedre er det, at containere altid kører på samme måde, uanset hvilken platform de udrulles på.

Men hvad bruges der til at udrulle containere? Et system er Docker. Docker er et af de nemmeste værktøjer, der findes til at udrulle containeriseret software. Det er gratis og kan installeres på de fleste platforme.

Hvad er fordelene ved containere?

Fordelene ved at bruge containere (i forhold til enten traditionelle metoder eller virtuelle maskiner) er mange. Her er blot nogle få:

  • Hurtig implementering: Med et image hentet fra Docker Hub kan du hurtigt implementere en container med en enkelt kommando).
  • Skab én, implementer mange: Du kan oprette så mange containere, som du vil, fra et enkelt image.
  • Mindre overhead: Du kan oprette så mange containere, som du vil, fra et enkelt image: Containere kræver langt færre systemressourcer end traditionelle metoder.
  • Portabilitet: Containere kræver langt færre systemressourcer end traditionelle metoder: Applikationer, der kører som containere, kan implementeres på forskellige styresystemer og hardwareplatforme.
  • Enklere applikationsudvikling: Containere understøtter agile udviklingscyklusser i kraft af deres design.
  • Næsten øjeblikkelig start: Containere kan startes næsten øjeblikkeligt, mens det kan tage tid at starte en virtuel maskine op.
  • Modularitet: Containere kan startes næsten øjeblikkeligt, mens en virtuel maskine kan tage tid at starte op: Komplekse applikationer kan opdeles i moduler, f.eks. en database, webserver og frontend.

Nu da du har en lidt større forståelse af, hvad containere er, og hvorfor du bør bruge dem, skal vi finde ud af, hvordan du installerer Docker på to af de mest populære open source-serverstyresystemer, Ubuntu Server (version 18.04) og CentOS 7.

Installation af Docker på CentOS 7

Først skal vi installere Docker CE (Community Edition) på CentOS 7. Installationen foregår via kommandolinjen, så log ind på din CentOS 7-server, og gør dig klar til at skrive.

Det første trin er at installere eventuelle nødvendige afhængigheder for Docker. For at gøre dette skal du sende følgende kommando:

1
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Når denne kommando er færdiggjort, skal du tilføje docker-ce-repositoriet med kommandoen:

1
sudo yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo

Med repositoriet på plads skal du installere docker-ce med kommandoen:

Med repositoriet på plads skal du installere docker-ce med kommandoen:

1
sudo yum install docker-ce

Du vil blive bedt om at godkende installationen (og importen af dens GPG-nøgle – Figur A).

Figur A

Når dette er færdigt, skal du tilføje din bruger til Docker-gruppen. Hvis du springer dette trin over, vil du kun kunne køre Docker-kommandoer ved hjælp af sudo, hvilket er en sikkerhedsrisiko. For at tilføje din bruger til Docker-gruppen skal du sende kommandoen:

1
sudo usermod -aG docker $(whoami)

Log ud af CentOS 7, og log ind igen, for at ændringen kan træde i kraft.

Sidst skal du starte Docker-dæmonen og aktivere den, så den starter ved systemstart. Dette kan gøres med de følgende to kommandoer:

1
2
3

sudo systemctl enable docker
sudo systemctl start docker

Hvis du udsender kommandoen docker images (som er kommandoen til at liste alle tilgængelige images, der findes på systemet), vil du ikke kun se, at Docker virker, men at der i øjeblikket ikke er nogen tilgængelige images (Figur B).

docker_b.jpg

Docker er oppe og kører, men indeholder ingen images.

Hvis du ønsker at trække NGINX-aftrykket fra Docker Hub, skal du sende kommandoen:

1
docker pull nginx

Giv kommandoen docker images igen, og du vil se det nyligt trukne image tilgængeligt (figur C).

Figur C

NGINX-aftrykket er klar til at blive brugt til containerudrulning.

Installation af Docker på Ubuntu Server 18.04

Installation af Docker på Ubuntu Server er faktisk en del nemmere. Da Docker findes i standardrepositoriet, er det eneste, du skal gøre, at logge ind på din Ubuntu Server og sende kommandoen:

1
sudo apt-get install docker.io -y

Overstående kommando vil installere alle nødvendige afhængigheder for at Docker kan køre. Når det er færdigt, skal du aktivere og starte docker-tjenesten med kommandoerne:

1
2
3

sudo systemctl enable docker
sudo systemctl start docker

Endeligt, tilføj dig selv til docker-gruppen med kommandoen:

1
sudo usermod -aG docker $(whoami)

Log dig ud af serveren og log ind igen. Du kan nu udstede de samme kommandoer, som du gjorde på CentOS 7. Liste over tilgængelige images med kommandoen:

1
docker images

Som forventet ser du ingen images på listen (Figur D).

Figur D

Ingen billeder er tilgængelige endnu for Ubuntu Server.

Træk NGINX-aftrykket ned med kommandoen:

1
docker pull nginx

Når aftrykket er hentet, skal du igen bruge kommandoen docker images for at se det på listen (Figur E).

Figur E

Det NGINX-aftryk, der er tilgængeligt på Ubuntu Server.

Konklusion

Og sådan installerer du Docker på både CentOS 7 og Ubuntu Server 18.04. I vores næste installation i denne serie lærer vi, hvordan vi implementerer en container ved hjælp af NGINX-aftrykket fra Docker Hub.

Feature image by _jinnie_ from .

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.