Hvordan lage et containerbilde for Amazon ECS?

Hvordan Lage Et Containerbilde For Amazon Ecs



Amazon ECS står for Elastic Container Service som tillater utviklere å utføre, administrere og skalere Docker-containere på Amazon. Det tilbyr et svært skalerbart og pålitelig forum for å distribuere containeriserte applikasjoner på AWS (Amazon Web Service). Det er et Docker-beholderregister som tilbys av AWS. Det tillater utviklere å beholde, håndtere og distribuere Docker-beholderbilder.

Denne artikkelen vil demonstrere:







Hvordan lage/bygge et Docker-bilde for Amazon ECS?

Docker CLI kan brukes til å skyve, trekke og administrere bilder i Amazon ECR-depoter. For å lage et beholderbilde for Amazon ECS, følg trinnene nedenfor:



  • Bygg Docker-fil.
  • Lag et Docker-bilde gjennom ' docker build -t . ' kommando.
  • Bekreft Docker-bildet.
  • Kjør Docker-bildet via ' docker run -t -i -p 80:80 ' kommando.

Trinn 1: Lag Docker-fil



På Visual Studio-kode, lag en ny fil med navnet ' Dockerfil ' og lim inn koden nedenfor i den:





FRA ubuntu:nyeste

LØPE apt-get oppdatering && apt-get -og installere apache2 && apt-get clean

LØPE ekko 'Hei AWS!' > / var / www / html / index.html

AVDEKKE 80

CMD [ 'apache2ctl' , '-D' , 'FORGRUNN' ]

I utdraget ovenfor:



  • « FRA ”-kommandoen definerer basisbildet som skal brukes, dvs. Ubuntu i vårt tilfelle.
  • « LØPE '-instruksjonen brukes til å oppdatere pakkelisten og installere ' apache2 ' nettserver som bruker ' apt-get ” pakkeforvalter. « apt-get clean ”-kommandoen frigjør diskplass ved å fjerne alle bufrede pakkefiler som ikke lenger er nødvendige.
  • « KJØR ekko ' oppretter en enkel index.html-fil i webserverens rotkatalog ' /var/www/html ' som viser meldingen ' Hei AWS! '.
  • « AVDEKKE ”-kommandoen avslører port 80 som er standardporten som brukes av Apache for å betjene nettrafikk.
  • « CMD ” kommandoen spesifiserer kommandoen som skal utføres når beholderen starter. I vårt tilfelle er det Apache-nettserveren og kjører den i forgrunnen.

Denne Docker-filen oppretter et Ubuntu-basert containerbilde som installerer Apache2-nettserveren og viser port 80.

Trinn 2: Bygg Docker Image for Amazon ECS

Deretter oppretter du et Docker-bilde fra Docker-filen ved å skrive ut ' docker build -t . ' kommando. Her lager vi et Docker-bilde kalt ' aws-img ':

dockerbygg -t aws-img.

Docker-bildet er opprettet.

Trinn 3: Bekreft opprettet bilde

For å sikre at Docker-bildet er opprettet vellykket, utfør kommandoen nedenfor:

docker-bilder

I bildet ovenfor viser den uthevede delen at Docker-bildet ' aws-img ' har blitt opprettet.

Trinn 4: Kjør Docker Image

Bruk nå ' docker run '-kommandoen sammen med ' -t ' og ' -Jeg '-alternativer og spesifiser porten og bildenavnet for å kjøre det nyopprettede Docker-bildet:

docker run -t -Jeg -s 80 : 80 aws-img

Her:

  • « -t alternativet brukes til å starte en pseudo-TTY-terminal.
  • « -Jeg flagget tillater interaksjon med Docker-beholderen.
  • « -s ' alternativet brukes for å tilordne porten ' 80:80 '.
  • « aws-img ' er Docker-bildet:

Etter å ha gjort det begynte Docker-bildet å kjøre på den tildelte porten som kan sees på skjermbildet nedenfor:

Hvordan skyve/laste opp et Docker-bilde til Amazon ECR?

For å skyve/laste opp beholderbildet til Amazon ECR, sjekk ut følgende trinn:

  • Konfigurer AWS CLI
  • Lag et Amazon ECR-lager ved å bruke ' aws ecr create-repository – repository-name –region ' kommando.
  • Merk Docker-bildet gjennom ' docker-tag ' kommando.
  • Logg på Amazon ECR med Docker.
  • Skyv Docker-bildet til Amazon ECR via ' docker push ' kommando.
  • Bekreftelse.

Merk: Sjekk ut vår dedikerte post for å installere AWS CLI på Windows.

Trinn 1: Konfigurer AWS CLI

Først, utfør den angitte kommandoen og oppgi den nødvendige legitimasjonen for å konfigurere AWS CLI:

aws konfigurere

Merk: For å se mer informasjon om AWS CLI-konfigurasjon, sjekk ut vår post om det.

Trinn 2: Opprett Amazon ECR Repository

Opprett/lag deretter et Amazon ECR-lager for opplasting av Docker-bilder ved å bruke ' aws ecr create-repository – repository-name –region ' kommando:

aws ecr opprette-repository --depotnavn aws-repo --region ap-sørøst- 1

Den ovennevnte kommandoen har opprettet et depot på Amazon ECR som kan sees i skjermbildet nedenfor:

I utgangen ovenfor, ' aws-repo ” repository kan sees.

Trinn 3: Merk Docker Image

Merk nå ønsket Docker-bilde med nettadressen til depotet ved å bruke ' docker-tag ' kommando:

docker tag aws-img 663878894723 .dkr.ecr.ap-southeast- 1 .amazonaws.com / aws-repo

Trinn 4: Logg på Amazon ECR

Etter det, kjør ' aws ecr get-login-passord –region | docker-pålogging – brukernavn AWS –passord-stdin .dkr.ecr..amazonaws.com ' for å logge på Amazon ECR med Docker:

aws ecr få-påloggingspassord --region ap-sørøst- 1 | havnearbeider Logg Inn --brukernavn AWS --passord-stdin 663878894723 .dkr.ecr.ap-southeast- 1 .amazonaws.com

Her,

  • « aws ecr få-påloggingspassord ”-kommandoen brukes til å hente et autentiseringstoken for et spesifisert ECR-register.
  • « -region flagget brukes til å spesifisere AWS-regionen der ECR-registeret er plassert. I vårt tilfelle er det ' ap-sørøst-1 ” region som er Asia Pacific Singapore.
  • « docker-pålogging kommandoen brukes til å logge på et ønsket Docker-register. Den trenger et brukernavn og passord for å autentisere med registeret.
  • « – brukernavn ” alternativet spesifiserer brukernavnet som skal brukes når du logger på ECR-registeret. For eksempel har vi spesifisert en ' AWS ' brukernavn.
  • « –passord-stdin alternativet forteller Docker å hente passordet fra standardinndata.
  • « dkr.ecr.ap-southeast-1.amazonaws.com ” er URL-en til ECR-registeret. Den inkluderer AWS-konto-ID og AWS-regionen der ECR-registeret er plassert:

Utdataene ovenfor indikerer at vi har logget på Amazon ECR.

Trinn 5: Skyv Docker Image til Amazon ECR

Til slutt, skyv Docker-bildet til Amazon ECR via ' docker push ' kommando:

> docker push 663878894723 .dkr.ecr.ap-southeast- 1 .amazonaws.com / aws-repo

I henhold til utgangen ovenfor har Docker-bildet blitt skjøvet til Amazon ECR.

Trinn 6: Bekreftelse

Til slutt, omdiriger til Amazons elastiske containerregister og kontroller om Docker-bildet har blitt skjøvet dit eller ikke:

I utgangen ovenfor har Docker-bildet blitt sendt til Amazon ECR.

Konklusjon

For å lage et containerbilde for Amazon ECS må du først opprette en Docker-fil. Bygg deretter et Docker-bilde fra ønsket Docker-fil ved å bruke ' docker build -t . ” kommandoen og kjør den. Deretter konfigurerer du Amazon CLI og oppretter et Amazon ECR-depot. Deretter merker du Docker-bildet og logger på Amazon ECR med Docker. Til slutt, skyv Docker-bildet til Amazon ECR via ' docker push ' kommando.