Vad är docker, container och containerteknologi? - Limetta Digitalbyrå
Teknik

Docker och containerteknologi - vad är det?

Kanske har du hört talas om Docker, container eller containerteknologin. De senaste åren har Docker och containterteknik blivit allt populärare. Men vad innebär det egentligen?

Idag ställs höga krav på företag och organisationers förmåga att vara agila och snabbt kunna möta kundernas förändrade behov. Ofta pratar man om att främja en DevOps-kultur för att optimera och automatisera interna flöden och processer. Delvis för att bli mer rörliga, men också för att kvalitetssäkra sina leveranser. Docker och containrar är en del av tekniken som möjliggör DevOps-metodologin.

 

Vad är Docker och containerteknologi?

Docker är en teknik, eller en plattform, med öppen källkod. Plattformen förser andra program med ett gränssnitt som automatiserar distributionen av ett program genom självständiga containrar. Containrarna fungerar som en behållare som paketerar koden för ett program. De innehåller relaterade filer, bibliotek och alla beroenden som krävs för att en applikation ska köras.

Tidigare har man haft problem med att program inte fungerar som de ska när de flyttas från en miljö till en annan. Det kan bero på skillnader i konfigurationen, att de har olika krav eller andra beroenden som inte samspelar. Genom att använda sig av självständiga containrar, kan man mycket enklare paketera och distribuera program sömlöst i olika miljöer. Det här gör att koden kan skapas och köras på vilken utvecklingsdator som helst, antingen i molnet eller lokalt.

Containrar kan köra flera olika instanser, eller versioner, av samma applikation på samma operativsystem. Samtidigt kan de hålla instanserna separerade från varandra. På så sätt behöver man inte installera ett helt nytt operativsystem för varje miljö, vilket gör att man sparar mycket resurser och effektiviserar processer.

Fördelen med containrar är att de kan köra flera olika instanser, eller versioner, av samma applikation på samma operativsystem - Limetta Digitalbyrå

Fördelen med containrar är att de kan köra flera olika instanser, eller versioner, av samma applikation på samma operativsystem.

Med containertekniken spelar det ingen roll vilket programspråk eller vilken utvecklingsplattform man använt. Inte heller vilken molntjänst eller vilket operativsystem det körs på. Däremot krävs att värdsystemet har program installerade för att hantera plattformar som Docker. För att skapa containrarna använder man en så kallad Docker image. Det är egentligen en fil eller mall med instruktioner som innehåller villkoren för en container.

Många jämför containerteknologin med vanliga fraktcontainrar. Även om de kan innehålla olika sorters gods, är de standardiserade och lika i sin utformning och storlek. På så sätt blir det enklare och mer effektivt att frakta och stapla dem, oavsett om det gäller fartyg eller tåg över hela världen. En mjukvarucontainer fungerar ungefär på samma sätt. De körs på olika plattformar utan att behöva ändras eller anpassas, men de kan fortfarande innehålla olika saker. Precis som en fraktcontainer kan flyttas mellan olika länder, kan du också skapa, flytta eller radera en Docker container. Det här gör det smidigare att hantera tekniska miljöer, både vad gäller utveckling, distribution och drift.

En mjukvarucontainer går att skapa, köra eller flytta mellan olika plattformar utan att ändras - Limetta Digitalbyrå

En mjukvarucontainer fungerar ungefär som Containrar i verkliga livet. De går att skapa, köra eller flytta mellan olika plattformar utan att ändras.

Containertrendens baksida

Fördelarna kan vara många men med ny teknik kommer ofta en del brister, inte minst säkerhetsaspekten. För containrar kan säkerhetsbrist handla om den mänskliga faktorn där man glömt en inställning, eller att man har för många containrar som man inte har koll på.

Samtidigt bör man väga säkerhetens brister mot fördelar; exempelvis fördelarna med det automatiserade leveransflödet som containrar faktiskt ger. Det går trots allt att förebygga och öka säkerheten. Till exempel genom att minska antalet containrar så att man har bättre koll, men även att stärka isoleringen mellan containrar. Genom att utgå ifrån bibliotek med kontrollerade mallar för containrar, till exempel det Docker erbjuder, har man också kommit en bra bit på vägen.

Säkerhetsbristen i containrar bör vägas mot de säkerhetsmässiga fördelarna - Limetta Digitalbyrå

Säkerhetsbristen bör vägas mot de säkerhetsmässiga fördelar som det automatiserade leveransflödet av containrar faktiskt ger. Det går att förebygga och öka säkerheten.

Fördelar och nackdelar

 

Fördelar

  • Tekniken erbjuder effektivare resursutnyttjande
  • En hel del av de driftsättningsproblem som uppstår när utvecklingsmiljön skiljer sig från produktionsmiljön elimineras till stor del
  • Containrar går snabbt att sätta upp eller flytta
  • Tekniken är en enklare och smidigare lättviktsalternativ till virtuella servrar
  • Docker är bra för applikationer som byggs upp av mikrotjänster där de enskilt kan behöva skalas upp snabbt. Exempelvis när man vill lansera nya features eller eliminera buggar
  • Tekniken gör att man kan skriva applikationer som är plattformsoberoende
  • Utvecklare kan arbeta på helt olika delar i en lösning samtidigt som de enkelt kan testa lösningen i sin helhet genom att köra andras dockercontainrar i sin lokala utvecklingsmiljö.

 

Nackdelar

  • Svag isolering mellan containers innebär säkerhetsutmaningar
  • Mängden containrar ställer krav på säkerheten. Det är svårare att hålla koll på en fragmenterad lösning. Genom att begränsa antalet containrar går det att förebygga och öka säkerheten.

 


Vill du veta mer om hur vi kan hjälpa dig?


Hör av dig till oss så berättar vi mer.

Kontakta oss

Läs även

Hör av dig!

Vill du komma i kontakt med oss?
Fyll i formuläret så hör vi av oss så fort vi kan.