Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här självstudien är början på en serie i fyra delar som introducerar Docker- för användning med Visual Studio Code (VS Code). Du lär dig att skapa och köra Docker-containrar, spara dataoch hantera flera containrar med Docker Compose.
VS Code erbjuder ett containerverktygstillägg som gör att du kan arbeta med en lokal Docker Desktop-tjänst. Docker Desktop körs på datorn och hanterar dina lokala containrar, som är kompakta virtualiserade miljöer som tillhandahåller en plattform för att skapa och köra appar. Container kräver inte storleken och överheaden av ett fullständigt operativsystem.
I den här första guiden lär du dig att:
- Skapa en Docker-container.
- Skapa en containeravbildning.
- Starta en appcontainer.
Förutsättningar
- Visual Studio Code installerat.
- Container Tools VS Code Extension har installerats.
- Docker Desktop konfigurerat att använda Linux-containrar.
- Ett Docker Hub-konto. Du kan skapa ett konto kostnadsfritt.
Självstudien fungerar med Windows 10 eller senare och Docker Desktop har konfigurerats för att använda Linux-containrar.
Skapa en container
En container är en process på datorn. Den är isolerad från alla andra processer på värddatorn. Isoleringen använder kernelnamnområden och kontrollgrupper.
En container använder ett isolerat filsystem. Det här anpassade filsystemet tillhandahålls av en containerbild. Avbildningen innehåller allt som behövs för att köra ett program, till exempel alla beroenden, konfiguration, skript och binärfiler. Avbildningen innehåller även annan konfiguration för containern, till exempel miljövariabler, ett standardkommando som ska köras och andra metadata.
När du har installerat containerverktygstillägget för VS Code kan du arbeta med containrar i VS Code. Förutom snabbmenyer i Container Explorer kan du välja Terminal>Ny terminal för att öppna ett kommandoradsfönster. Du kan också köra kommandon i ett Bash-fönster. Om inget annat anges kan alla kommandon som är märkta som Bash- köras i ett Bash-fönster eller i VS Code-terminalen.
Ange Docker till Linux-containerläge. Om du vill växla till Linux-containrar om du för närvarande är inställd på Windows-containrar högerklickar du på Docker-ikonen i systemfältet medan Docker Desktop körs och väljer Växla till Linux-containrar.
I VS Code väljer du Terminal>New Terminal.
Kör det här kommandot i terminalfönstret eller ett Bash-fönster.
docker run -d -p 80:80 docker/getting-startedDet här kommandot innehåller följande parametrar:
-
-dKör containern i frånkopplat läge i bakgrunden. -
-p 80:80Mappa port 80 för värden till port 80 i containern. -
docker/getting-startedAnger vilken avbildning som ska användas.
Tips
Du kan kombinera flaggor med ett tecken för att förkorta det fullständiga kommandot. Kommandot ovan kan till exempel skrivas som:
docker run -dp 80:80 docker/getting-started-
I VS Code väljer du ikonen Containrar till vänster för att visa Container Explorer.
Container Tools VS Code-tillägget visar de containrar som körs på datorn. Du kan komma åt containerloggar och hantera containerlivscykeln, till exempel stoppa och ta bort.
Containernamnet, modest_shockley i det här exemplet, skapas slumpmässigt. Din har ett annat namn.
Högerklicka på docker/getting-started för att öppna en kontextmeny. Välj Öppna i webbläsaren.
Öppna i stället en webbläsare och ange
http://localhost/tutorial/.Du kommer att se en sida om DockerLabs som hostas lokalt.
Högerklicka på docker/getting-started för att öppna en kontextmeny. Välj Ta bort för att ta bort den här containern.
Om du vill ta bort en container med hjälp av kommandoraden kör du det här kommandot för att hämta dess container-ID:
docker psStoppa och ta sedan bort containern:
docker stop <container-id> docker rm <container-id>Uppdatera webbläsaren. Sidan Komma igång som du såg för en stund sedan är borta.
Skapa en containeravbildning för appen
I den här självstudien används ett enkelt Todo-program.
Med appen kan du skapa arbetsobjekt och markera dem som slutförda eller ta bort dem.
Bygg programmet genom att skapa en Dockerfile. En Dockerfile är ett textbaserat skript med instruktioner som används för att skapa en containeravbildning.
Gå till Docker Kom-igång-guide och välj sedan Kod>Ladda ner ZIP. Extrahera innehållet till en lokal mapp.
I VS Code väljer du Fil>Öppna mapp. Gå till mappen app i det extraherade projektet och öppna mappen. Du bör se en fil med namnet package.json och två mappar som heter src och spec.
Skapa en fil med namnet Dockerfile i samma mapp som filen package.json med följande innehåll.
FROM node:lts-alpine RUN apk add --no-cache python3 g++ make WORKDIR /app COPY . . RUN yarn install --production CMD ["node", "/app/src/index.js"]Notera
Kontrollera att filen inte har något filnamnstillägg som
.txt.I filutforskaren till vänster i VS Code, högerklicka på Dockerfile och välj sedan Bygg Bild. Ange getting-started som tagg för bilden i textrutan.
Taggen är ett beskrivande namn för bilden.
Om du vill skapa en containeravbildning från kommandoraden använder du följande kommando från mappen
appsom har Dockerfile.docker build -t getting-started .
Du har använt Dockerfile för att skapa en ny containeravbildning.
Du kanske har märkt att många "lager" har laddats ned.
Dockerfile startar från avbilden node:lts-alpine.
Om inte avbildningen redan fanns på datorn behövde avbildningen laddas ned.
När avbildningen har laddats ned kopierar Dockerfile applikationen och använder yarn för att installera applikationens beroenden.
Värdet CMD i Dockerfile anger standardkommandot som ska köras när du startar en container från den här avbildningen.
. i slutet av kommandot docker build anger att Docker ska leta efter Dockerfile- i den aktuella katalogen.
Starta din appcontainer
Nu när du har en avbildning kan du köra programmet.
Starta containern med hjälp av följande kommando.
docker run -dp 3000:3000 getting-startedParametern
-danger att du kör containern i frånkopplat läge i bakgrunden. Värdet-pskapar en mappning mellan värdporten 3000 och containerporten 3000. Utan portmappningen skulle du inte kunna komma åt programmet.Efter några sekunder, i VS Code, i Container Explorer , högerklickar du på Komma igång och väljer Öppna i Webbläsare. Du kan i stället öppna webbläsaren till
http://localhost:3000.Du bör kunna se att appen kör.
Lägg till ett objekt eller två för att testa om det fungerar som förväntat. Du kan markera objekt som slutförda och ta bort objekt. Användargränssnittet lagrar framgångsrikt objekt i bakänden.
Nästa steg
Du har slutfört den här guiden och du har en att göra-lista med några saker. Du har lärt dig att skapa containeravbildningar och köra en containerbaserad app.
Behåll allt du har gjort hittills för att fortsätta den här serien med självstudier. Prova sedan del II i den här serien:
Här är några resurser som kan vara användbara för dig: