Sådan dockeriseres en Django-app

Sådan dockeriseres en Django-app
Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission. Læs mere.

Docker er en af ​​de mest populære containerplatforme, der lader dig administrere containeriserede applikationer. Docker leverer arkitektur og funktioner til containerautomatisering, sikkerhed, tilpasning og virksomhedssupport.





Docker har tre vigtige komponenter: Docker-klienten (et kommandolinjeværktøj), Docker Host og Docker Registry. Disse tre komponenter arbejder sammen for at gøre dig i stand til at bygge, køre og gemme applikationer.





MAKEUSE AF DAGENS VIDEO

Find ud af, hvordan du bruger dette fantastiske værktøj ved at samle en prøve Django-app. Lær først at installere Docker på Ubuntu, macOS og Windows.





Installer Docker på Ubuntu

Start med at installere Docker på dit foretrukne operativsystem. Du kan følg disse bemærkninger for at installere Docker på Ubuntu eller brug følgende instruktioner til macOS eller Windows.

Installer Docker på macOS

For at installere Docker på macOS skal du sikre dig, at du har macOS 11 eller nyere. Følg derefter disse trin:



  1. Download Docker fra Docker hub hjemmeside .
  2. Dobbeltklik på Docker.dmg for at åbne installationsprogrammet.
  3. Træk i Docker ikonet til mappen Programmer.
  4. For at starte Docker, Dobbeltklik på den docker.app .
  5. Docker-hvallogoet på statuslinjen indikerer, at Docker kører.

Du kan også installere Docker på macOS via kommandolinjen ved at følge Docker Mac installation instruktioner.

Installer Docker på Windows

Følg følgende trin for at installere Docker desktop på Windows OS:





hvad skal du gøre, hvis du tror, ​​at din telefon er blevet hacket
  1. Download Docker fra Docker hub hjemmeside .
  2. Dobbeltklik på Docker Desktop Installer.exe for at køre installationsprogrammet.
  3. Aktiver Hyper-V Windows-funktionen på konfigurationssiden, når du installerer.
  4. Følg processen og tillad alle tilladelser, indtil installationen er fuldført.
  5. Klik efter installationen for at fuldføre processen.
  6. For at starte Docker skal du søge og vælge Docker Desktop i dine skrivebordssøgeresultater.

Alternativt kan du installere Docker på Windows OS ved hjælp af en kommandolinje ved at følge Docker Windows installation instruktioner.

Opret Django App

Opret en simpel Django-app . Du kan se appen, når du navigerer til http://127.0.0.1:8000. You will containerize this app.





  App på browser med Hello docker H1

Opret en Dockerfile

For at containerisere appen skal du oprette et Docker-image for at bygge og køre containere. Et Docker-billede er en skabelon med instruktioner om, hvordan man kører containere.

Du vil bruge en Dockerfil for at oprette et billede til appen. Opret en fil i rodmappen kaldet Dockerfil. Tilføj derefter følgende instruktioner til filen:

 FROM python:3 

WORKDIR /app

ADD . /app/

EXPOSE 8000

COPY requirements.txt /app

RUN pip3 install -r requirements.txt --no-cache-dir

COPY . /app

ENTRYPOINT ["python3"]

CMD ["manage.py", "runserver", "0.0.0.0:8000"]

Dockerfiler bruger unikke Docker-nøgleord til at angive instruktioner.

Det FRA nøgleord identificerer det basisbillede, du vil bygge billedet med. Python-billedet fra Docker har de nødvendige komponenter til at køre Django-appen. Docker vil bruge det samme billede i efterfølgende builds.

Det WORKDIR søgeord opretter en mappe inde i containeren. Eksempelkommandoen identificerer /app mappe som rodmappen.

Det TILFØJE kommando tilføjer alt i den aktuelle mappe til /app folder.

Det UDSÆTTE nøgleordet afslører en port inde i Docker-billedet for omverdenen. Du kan se den containeriserede app på denne port ved hjælp af en browser.

skal jeg bruge 32 eller 64 bit

Det KOPI nøgleord kopierer indhold fra én mappe og placerer det i en anden. I dit tilfælde vil den kopiere alt indhold af appen fra den aktuelle mappe. Indholdet vil gå ind i App mappe i containeren.

Det LØB nøgleordet udfører alle kommandoer i et nyt lag af det aktuelle billede og begår resultaterne. Det næste trin i Dockerfilen vil bruge det resulterende forpligtede billede.

Det INDGANG nøgleordet definerer en container som en eksekverbar. I dette tilfælde er det Python3. Du kan bruge det sammen med eller i stedet for CMD søgeord. EN Dockerfil skal angive enten den ene eller begge CMD eller INDGANG søgeord. Docker definerer, hvordan de to instruktioner samarbejder.

Det CMD nøgleordet kører en Linux-kommando, når billedet starter. Instruktionen definerer, hvilken kommando der kører, når du kører en container.

Byg Docker-billedet

Nu hvor Dockerfil er færdig, skal du gå videre og bygge Docker-billedet. Kør følgende kommando for at bygge billedet:

 docker build --tag docker-django-app:latest .

Når det begynder at bygge, vil Docker bygge billedet i lag. Lagene vil være i overensstemmelse med antallet af instruktioner givet i Dockerfil . I dette tilfælde vil du have ni lag. Ni trin vil repræsentere disse lag.

En vellykket build vil se sådan ud:

  docker har opbygget et billede

Nu, hvis du tjekker dine docker-billeder, bør du se det nye billede.

  nybygget billede på docker

Kør Docker Container

Dernæst skal du køre billedet i beholderen. Det er her, appen vil leve. Kør følgende kommando for at køre billedet:

 docker run --name docker-djangoapp -p 8000:80 -d docker-django-app:latest

Det skulle returnere et serienummer for beholderen som sådan:

  ny containeriseret app

Docker run-kommandoen tillader muligheder tags til billeder. I dette tilfælde vil du bruge --navn tag for at navngive containeren docker-djangoapp . Kør derefter containeren på bagbord 8000:80 med -s . Dernæst skal du angive det billede, du vil oprette beholderen. Dette er docker-django-app: nyeste billede, du oprettede tidligere.

Docker run-kommandoen opretter et containerlag over billedet. Det starter derefter med den angivne kommando. Syntaksen for at køre containere er som følger:

 docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Tjek Docker-containerne for at se, om containeren kører. Når du løber docker ps Det skal se ud som følger:

  Ny container kører i docker

Tillykke! Du har containeriseret din første app. Dernæst kan du skubbe beholderen til Docker-registret for opbevaring. Du kan få adgang til din applikation, når du ønsker det fra enhver maskine.

Du kan også dele det med andre online. Registret tilbyder sikkerhed for billeder og tillader ekstra privilegier på private konti.

Hvorfor dockerisere en app?

Flere og flere udviklere bruger Docker til at optimere bygningen og administrationen af ​​containere i ethvert virtuelt miljø.

Docker kommer med produktive funktioner, inklusive en klient, der udsteder build-kommandoer til Docker-dæmoner. Dæmonen bygger billeder og kører containere. Du kan bygge og gemme billederne i Docker-registret. Dette sikrer, at billederne er sikre og tilgængelige online.

hvordan man starter en blog på tumblr

Docker tilbyder allerede konfigurerede officielle billeder, der har færdige komponenter. Du kan bruge disse billeder til hurtigt at bygge containere til dine applikationer.