Android

Hvordan installere og bruke docker compose på ubuntu 18.04

How to Install Docker and Docker compose in Linux Ubuntu 18.04

How to Install Docker and Docker compose in Linux Ubuntu 18.04

Innholdsfortegnelse:

Anonim

Docker Compose er et verktøy som lar deg definere og administrere Docker-applikasjoner med flere containere. Den bruker en YAML-fil for å konfigurere applikasjonens tjenester, nettverk og volumer.

Komponere kan brukes til forskjellige formål. Enkeltvertsapplikasjonsdistribusjoner, automatisert testing og lokal utvikling er de mest populære brukssakene for Docker Compose.

I denne opplæringen viser vi deg hvordan du installerer den nyeste versjonen av Docker Compose på Ubuntu 18.04 og utforske de grunnleggende Docker Compose-konseptene og -kommandoene.

De samme instruksjonene gjelder for Ubuntu 16.04 og all annen Debian-basert distribusjon, inkludert Debian, Linux Mint og Elementary OS.

Forutsetninger

Forsikre deg om at du har oppfylt følgende forutsetninger før du fortsetter med denne opplæringen:

  • Logget inn som bruker med sudo-rettigheter. Har Docker installert ved å følge instruksjonene fra Hvordan installere og bruke Docker på Ubuntu 18.04.

Installer Docker Compose på Ubuntu

Docker Compose-installasjonspakken er tilgjengelig i de offisielle Ubuntu 18.04-depotene, men det er ikke alltid det er den siste versjonen. Den anbefalte tilnærmingen er å installere Docker Compose fra Dockers GitHub-lager.

I skrivende stund er denne siste stabile versjonen av Docker Compose versjon 1.23.1 . Før du laster ned Compose binæren, besøk Compose repository utgivelsessiden på GitHub og sjekk om det er en ny versjon tilgjengelig for nedlasting.

Følg disse trinnene for å installere Docker Compose på Ubuntu 18.04:

  1. Last ned Docker Compose binær i /usr/local/bin katalogen med følgende curl :

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

    Når nedlastingen er fullført, bruker du kjørbare tillatelser på Compose binær:

    sudo chmod +x /usr/local/bin/docker-compose

    Bekreft installasjonen ved å kjøre følgende kommando som viser Compose-versjonen:

    docker-compose --version

    Utgangen vil se slik ut:

    docker-compose version 1.23.1, build b02f1306

Komme i gang med Docker Compose

I denne delen vil vi vise hvordan du bruker Docker Compose til å sette opp en WordPress-applikasjon med flere containere på Ubuntu 18.04.

Begynn med å lage en prosjektkatalog og navigere i den:

mkdir my_app cd my_app

Start teksteditoren din og lag en fil som heter docker-compose.yml i prosjektkatalogen:

nano docker-compose.yml

Lim inn følgende innhold:

Docker-compose.yml

version: '3.3' services: db: image: mysql:5.7 restart: always volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: wordpress wordpress: image: wordpress restart: always volumes: -./wp_data:/var/www/html ports: - "8080:80" environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: wordpress WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: password depends_on: - db volumes: db_data: wp_data:

La oss analysere koden linje for linje.

I den første linjen spesifiserer vi Compose-filversjonen. Det er flere forskjellige versjoner av Compose-filformatet med støtte for spesifikke Docker-utgivelser.

Deretter definerer vi to tjenester, db og wordpress . Hver tjeneste kjører ett bilde, og det vil opprette en egen beholder når docker-komponere kjøres.

db tjenesten:

  • Bruker mysql:5.7 bildet. Hvis bildet ikke er til stede i systemet, vil det bli trukket fra det offentlige lagringsstedet til Docker Hub. Bruker alltid omstart-policyen som vil instruere beholderen til å starte på nytt. Oppretter et navngitt volum db_data å gjøre databasen vedvarende. db_data miljøvariablene for mysql:5.7 bildet.

wordpress tjenesten:

  • Bruker wordpress bildet. Hvis bildet ikke er til stede på systemet ditt, vil Compose trekke det fra Docker Hub-offentlige depot. Bruker alltid omstart-policyen som vil instruere beholderen om å starte på nytt. wp_data katalogen på verten til /var/lib/mysql inne i container.Videresetter den eksponerte porten 80 på beholderen til port 8080 på vertsmaskinen. Definerer miljøvariablene for wordpress depends_on definerer avhengigheten mellom de to tjenestene. I dette eksemplet vil db bli startet før wordpress .

Start prosjektkatalogen fra prosjektkatalogen ved å kjøre følgende kommando:

docker-compose up

Utgangen skal se slik ut:

… wordpress_1 | AH00163: Apache/2.4.25 (Debian) PHP/7.2.10 configured -- resuming normal operations wordpress_1 | AH00094: Command line: 'apache2 -D FOREGROUND'

Compose vil trekke begge bildene, starte to containere og opprette wp_data katalogen i prosjektkatalogen din.

Skriv inn http://0.0.0.0:8080/ i nettleseren din, så ser du installasjonsskjermen for Wordpress.

På dette tidspunktet er Wordpress-applikasjonen i gang, og du kan begynne å jobbe med temaet eller plugin-en.

For å stoppe komponering, trykk CTRL+C

Du kan også starte Compose i en frittliggende modus ved å passere -d flagget.

docker-compose up -d

For å sjekke løpende tjenester bruker du alternativet ps :

docker-compose ps

Name Command State Ports ---------------------------------------------------------------------------------- my_app_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp my_app_wordpress_1 docker-entrypoint.sh apach… Up 0.0.0.0:8080->80/tcp

Når Compose kjører i frittliggende modus for å stoppe bruk av tjenester:

docker-compose stop

docker-compose down

Ved å --volumes bryteren - --volumes vil du også fjerne datavolumene:

docker-compose down --volumes

Avinstallere Docker Compose

Hvis du av en eller annen grunn ønsker å avinstallere Docker Compose, kan du bare fjerne binæren ved å skrive:

sudo rm /usr/local/bin/docker-compose

Konklusjon

Du har lært hvordan du installerer og bruker Docker Compose på Ubuntu 18.04.

Å bruke Docker Compose kan forbedre arbeidsflyten og produktiviteten din betydelig. Du kan definere utviklingsmiljøet ditt med Docker Compose og dele det med prosjektmedarbeiderne.

docker ubuntu