Dela via


Docker-containrar, avbildningar och register

Dricks

Det här innehållet är ett utdrag från eBook, .NET Microservices Architecture for Containerized .NET Applications, tillgängligt på .NET Docs eller som en kostnadsfri nedladdningsbar PDF som kan läsas offline.

.NET Microservices Architecture for Containerized .NET Applications eBook cover thumbnail.

När du använder Docker skapar en utvecklare en app eller tjänst och paketar den och dess beroenden i en containeravbildning. En avbildning är en statisk representation av appen eller tjänsten och dess konfiguration och beroenden.

För att köra appen eller tjänsten instansieras appens avbildning för att skapa en container som körs på Docker-värden. Containrar testas ursprungligen i en utvecklingsmiljö eller dator.

Utvecklare bör lagra avbildningar i ett register, som fungerar som ett bibliotek med avbildningar och som behövs vid distribution till produktionsorkestrerare. Docker underhåller ett offentligt register via Docker Hub. Andra leverantörer tillhandahåller register för olika samlingar av avbildningar, inklusive Azure Container Registry. Företag kan också ha ett privat register lokalt för sina egna Docker-avbildningar.

Bild 2–4 visar hur avbildningar och register i Docker relaterar till andra komponenter. Den visar också flera registererbjudanden från leverantörer.

A diagram showing the basic taxonomy in Docker.

Bild 2-4. Taxonomi för Docker-termer och begrepp

Registret är som en bokhylla där avbildningar lagras och kan hämtas för att skapa containrar för att köra tjänster eller webbappar. Det finns privata Docker-register lokalt och i det offentliga molnet. Docker Hub är ett offentligt register som underhålls av Docker, tillsammans med Docker Trusted Registry som en lösning i företagsklass, erbjuder Azure Azure Container Registry. AWS, Google och andra har också containerregister.

Genom att placera avbildningar i ett register kan du lagra statiska och oföränderliga programbitar, inklusive alla deras beroenden på ramverksnivå. Dessa avbildningar kan sedan versionshanteras och distribueras i flera miljöer och därför tillhandahålla en konsekvent distributionsenhet.

Privata avbildningsregister, antingen lokalt eller i molnet, rekommenderas när:

  • Dina bilder får inte delas offentligt på grund av konfidentialitet.

  • Du vill ha minsta nätverksfördröjning mellan dina avbildningar och din valda distributionsmiljö. Om din produktionsmiljö till exempel är Azure-moln vill du förmodligen lagra dina avbildningar i Azure Container Registry så att nätverksfördröjningen blir minimal. Om produktionsmiljön är lokal på liknande sätt kanske du vill ha ett lokalt Docker Trusted Registry tillgängligt i samma lokala nätverk.