Hva er en beholder?
En beholder er et isolert miljø der en applikasjon kan kjøres.
Beholderen, applikasjonen og alle avhengighetene er konstruert med deler av vertens ressurser, for eksempel et kjerneoperativsystem, en prosessor og et minne, og deretter logisk atskilt fra andre beholdere og fra selve verten.
Diagrammet nedenfor illustrerer hvordan en rød og gul beholder eksisterer sammen i samme vert, ved hjelp av samme maskinvare og kjerneoperativsystem, men ligger på hver sin plass slik at de kan kjøre appene sine uten eksterne forstyrrelser.
Legg merke til hvordan den samme maskinvaren og operativsystemet som er installert på denne maskinvaren, kan kjøre sine egne applikasjoner og tjenester uavhengig av det som skjer i hver beholder.
Hvordan du oppretter og kjører beholdere i Windows Server
Beholdere kan kjøres på forskjellige plattformer som Linux, Windows og Mac-operativsystemer. Denne artikkelen/demoen fokuserer imidlertid på å kjøre beholdere i Windows Server.
Du kan arbeide med Windows-beholdere på flere måter, inkludert Windows Admin Center (WAC) eller Visual Studio. I denne artikkelen/demoen brukes imidlertid Docker.
Docker er et plattform-som-en-tjeneste-produkt som kan brukes til å kombinere et program, alle avhengigheter og konfigurasjonsinformasjon i én enkelt pakke kalt en beholder. Deretter kan Docker brukes til å sende, kjøre eller slette denne beholderen.
De påfølgende trinnene ble utført på en ny installasjon av Windows Server 2022.
Du finner en liste over forutsetninger for å kjøre beholdere på Windows Server i den eksterne lenken nedenfor:
Kom i gang: Klargjør Windows for containere
Fremgangsmåten for å opprette og kjøre beholdere på Windows Server ved hjelp av Docker kan oppsummeres som følger:
1. Installere Docker
I PowerShell (kjør som administrator) skriver du inn:
install-module -name dockerMsftProvider -repository PSGallery -force
I ledeteksten skriver du inn "
Y" for å bekrefte installasjonen av NuGet.
I samme PowerShell-økt skriver du inn:
Install-Package -Name docker -ProviderName DockerMsftProvider
I ledeteksten skriver du inn "
Y" for å klarere pakken.
I samme PowerShell-økt skriver du inn:
Start datamaskin
på nytt 2. Opprett en Docker-fil og last ned en beholderavbildning
På en forhøyet PowerShell-økt bytter du til rotkatalogen og oppretter en ny mappe ved å skrive inn:
cd\
mkdir Containers
cd Containers
Opprett docker-filen i den samme PowerShell-økten, og rediger den ved å skrive inn:
New-Item dockerfile
(Legg merke til at det ikke er noen filtype)
notepad dockerfile
Skriv inn følgende tre linjer i tekstredigeringsprogrammet for notisblokk, og lagre og lukk dockerfile:
FROM mcr.microsoft.com/windows/servercore/iis
RUN powershell
COPY index.html C:/inetpub/wwwroot
Gå tilbake til Powershell, fremdeles i C: \ Containers-konteksten, og opprett en n html-fil og rediger den ved å skrive inn følgende: Nytt element index.html notisblokk index.html Skriv inn følgende tre linjer i notisblokktekstredigeringsprogrammet, og lagre og lukk deretter
index.html-filen
:
<h1>Hello World!</h1>
<p>This is an example of a simple HTML page hosted on:</p>
<h2>container #1</h2>
3. Bygg og kjør beholderen.
Tilbake i PowerShell, fremdeles i C:\Containers, type:
docker build -t webserver .
Vent til bildet lastes ned fra Microsoft Container Registry og skriv deretter:
docker-bilder
Du skal nå se det nedlastede bildet.
For å kjøre en beholder ved hjelp av den nedlastede imagemalen, går du tilbake til powershell type:docker run --name container1 -
d -p 80:
80 webserver
Denne siste linjen oppretter og kjører en beholder kalt container1 basert på webserveravbildningen som ble klargjort. -d-bryteren instruerer Windows om å kjøre beholderen i bakgrunnen, og -p ber vinduer videresende port 80 (HTTP) på verten til port 80 i beholderen.
Slik tester du beholderen:
Åpne en nettleser på verten og bla til localhost (du kan også bruke en annen datamaskin på samme nettverkssegment og bla til beholderens verts-IP-adresse eller datamaskinnavn).
Du bør trykke på HTML-eksempelsiden som ble opprettet tidligere:
Dette fullfører opplæringen om hvordan du kjører Docker-beholdere på Windows Server 2022.