Hvordan bruke docker-komponere-kommandoen

Hvordan bruke docker-compose-kommandoen Finn ut hvordan du kommer i gang med å jobbe med docker-compose-kommandoen.

Må-lese sky

  • Cloud computing i 2020: Spådommer om sikkerhet, AI, Kubernetes, mer
  • De viktigste skyutviklingen i tiåret
  • Topp leverandør av desktop som en tjeneste (DaaS): Amazon, Citrix, Microsoft, VMware og mer
  • Cloud computing policy (TechRepublic Premium)

Administrering og distribusjon av Docker-containere kan gjøres på mange måter. Du kan bruke den rette opp-docker-kommandoen, du kan jobbe via et av de mange GUI-verktøyene (både nettbasert og stasjonær klientorientert), eller du velger å gå docker-komponere ruten.

Hva er Docker Compose? Enkel: Docker Compose brukes til å lage containere og koblingene mellom dem. Imidlertid er docker-komponere-kommandoen faktisk litt mer nyttig enn det. Med denne kommandoen kan du: Bygg bilder, skalere containere, helle containere, se output fra containere, liste den offentlige porten til en container og mye mer.

Men hvordan bruker du docker-compose? La oss finne ut hvordan.

Serverløs databehandling: En guide for IT-ledere (TechRepublic Premium)

Slik installerer du Docker Compose

Selv om du har installert Docker på serveren din, er sjansen stor for at Docker Compose ikke ble installert sammen med den. For å installere Docker Compose, utgir du følgende kommandoer:

 sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s) - $ (uname -m)" -o / usr / local / bin / docker-komponere sudo chmod + x / usr / local / bin / docker-compose 

Bekreft installasjonen med kommandoen:

 docker-komponere versjon 

Du bør se versjonsnumrene for noen få applikasjoner ( figur A ).

Figur A

Docker Compose installed and ready.

" data-credit="" rel="noopener noreferrer nofollow">

Docker Compose er installert og klar.

Docker-filen

For å distribuere en container, avhenger Docker Compose av en docker-compose.yml-fil, som er en fil som brukes til å distribuere en Docker-container etter dine spesifikasjoner. La oss si at du vil distribuere en Wordpress-container. Opprett først en ny katalog med kommandoen:

 mkdir ~ / wordpressbuild 

Endre til den nye katalogen med kommandoen:

 cd ~ / wordpressbuild 

Lag den nye Docker Compose-filen med kommandoen:

 nano docker-compose.yml 

Lim inn følgende innhold (hentet fra den offisielle Docker Compose-dokumentasjonen) i filen:

 versjon: '3.3' tjenester: db: image: mysql: 5.7 bind: - db_data: / var / lib / mysql omstart: alltid miljø: MYSQL_ROOT_PASSWORD: hvernigordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: image:: wordpress: siste porter: - "8000: 80" omstart: alltid miljø: WORDPRESS_DB_HOST: db: 3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress volumes: db_data: {} 

Lagre og lukk den filen.

Nå bygger vi prosjektet og distribuerer containeren i frittliggende modus med kommandoen:

 docker-komponere opp -d 

Kommandoen vil laste ned alle nødvendige bilder (i dette tilfellet MySQL og Wordpress) og deretter distribuere tjenesten på port 8000. Du kan peke en nettleser til http: // SERVER_IP: 8000 (der SERVER_IP er IP-adressen til hosting-serveren ) for å se Wordpress-installasjonssiden ( figur B ).

Figur B

The Wordpress installer.

" data-credit="" rel="noopener noreferrer nofollow">

Wordpress-installasjonsprogrammet.

Slik sjekker du inn på distribusjonen din

La oss si at du vil sjekke loggene fra distribusjonen din. For å gjøre dette, gi kommandoen:

 docker-komponere logger 

Du bør se mye informasjon fra den siste distribusjonen din ( figur C ).

Figur C

Viewing the logs from the docker-compose deployment of Wordpress.

" data-credit="" rel="noopener noreferrer nofollow">

Se på loggene fra docker-komponere distribusjonen av Wordpress.

Denne kommandoen vil spytte ut mye informasjon (spesielt hvis du har distribuert mange containere). I stedet kan du spesifisere en tjeneste som skal vises på loggfiler. Hvordan vet jeg hvilket tjenestenavn du skal bruke? Sjekk filen docker-compose.yml. I eksempelet vårt har vi to tjenester:

  • db - databasen
  • wordpress - Wordpress-beholderen

Så hvis du bare vil vise loggene for wordpress-tjenesten, vil denne kommandoen være:

 docker-komponere logger wordpress 

Du kan også følge utdataene fra loggene (på samme måte som du bruker halekommandoen) slik:

 docker-komponer logger -f wordpress 

Hver gang ny informasjon blir logget for wordpress-tjenesten, vil den vises i terminalvinduet ( figur D ).

Figur D

Following the wordpress service logs.

" data-credit="" rel="noopener noreferrer nofollow">

Følger serviceloggene for wordpress.

Hva om du glemte hvilke porter du brukte i distribusjonen? Du kan sjekke docker-compose.yml-filen, eller du kan bruke portalternativet med docker-compose-kommandoen. Du må kjenne den interne kommandoen til en tjeneste. For eksempel misligholder Wordpress port 80, så vi vet at det er den interne porten. Men hva tilordnet vi som den nettverksvendte porten? Finn ut med kommandoen:

 docker-komponere port wordpress 80 

Utdataene fra denne kommandoen viser at vi har kartlagt intern port 80 til ekstern port 8000 ( figur E ).

Figur E

Our port mapping for Wordpress.

" data-credit="" rel="noopener noreferrer nofollow">

Portkartleggingen vår for Wordpress.

Hvis du ikke kan huske hvilke containere du har distribuert, kan du gi kommandoen:

 docker-komponere ps 

Utgangen viser en liste over alle containere du har distribuert ( figur F ).

Figur F

A listing of containers.

" data-credit="" rel="noopener noreferrer nofollow">

En liste over containere.

Så vidt i gang

Og det skulle komme deg i gang med kraften som finnes i Docker Compose. Når vi neste gang besøker dette emnet, vil vi bryte ned docker-compose.yml-filen og finne ut hvordan du kan lage din egen.

Ukens nyhetsbrev med åpen kildekode

Du vil ikke gå glipp av våre tips, opplæringsprogrammer og kommentarer til Linux OS og open source applikasjoner. Leveres tirsdager

Registrer deg i dag

© Copyright 2021 | pepebotifarra.com