Android

Hoe Docker Compose te installeren en te gebruiken op 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

Inhoudsopgave:

Anonim

Docker Compose is een tool waarmee u Docker-toepassingen met meerdere containers kunt definiëren en beheren. Het maakt gebruik van een YAML-bestand om de services, netwerken en volumes van de toepassing te configureren.

Compose kan voor verschillende doeleinden worden gebruikt. Implementaties van afzonderlijke hostapplicaties, geautomatiseerde testen en lokale ontwikkeling zijn de meest populaire use cases voor Docker Compose.

In deze zelfstudie laten we u zien hoe u de nieuwste versie van Docker Compose op Ubuntu 18.04 installeert en de basisconcepten en opdrachten van Docker Compose verkennen.

Dezelfde instructies zijn van toepassing op Ubuntu 16.04 en elke andere op Debian gebaseerde distributie, inclusief Debian, Linux Mint en Elementary OS.

voorwaarden

Zorg ervoor dat u aan de volgende voorwaarden hebt voldaan voordat u doorgaat met deze zelfstudie:

  • Aangemeld als een gebruiker met sudo-rechten. Heb Docker geïnstalleerd volgens de instructies van Hoe Docker te installeren en gebruiken op Ubuntu 18.04.

Docker Compose op Ubuntu installeren

Het Docker Compose-installatiepakket is beschikbaar in de officiële Ubuntu 18.04-opslagplaatsen, maar is mogelijk niet altijd de nieuwste versie. De aanbevolen aanpak is om Docker Compose te installeren vanuit de GitHub-repository van Docker.

Op het moment dat dit artikel werd geschreven, is versie 1.23.1 de nieuwste stabiele versie van Docker Compose. Voordat u de binaire compose downloadt, bezoekt u de releasepagina van de compose repository op GitHub en controleert u of er een nieuwe versie beschikbaar is om te downloaden.

Volg deze stappen om Docker Compose op Ubuntu 18.04 te installeren:

  1. Download de Docker Compose binary naar de map /usr/local/bin met de volgende curl opdracht:

    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

    Nadat de download is voltooid, past u uitvoerbare machtigingen toe op het binaire bestand opstellen:

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

    Controleer de installatie door de volgende opdracht uit te voeren waarmee de Compose-versie wordt weergegeven:

    docker-compose --version

    De uitvoer ziet er ongeveer zo uit:

    docker-compose version 1.23.1, build b02f1306

Aan de slag met Docker Compose

In dit gedeelte laten we zien hoe u Docker Compose kunt gebruiken om een ​​WordPress-toepassing met meerdere containers op Ubuntu 18.04 in te stellen.

Begin door een projectmap te maken en erin te navigeren:

mkdir my_app cd my_app

Start uw teksteditor en maak een bestand met de naam docker-compose.yml in de projectmap:

nano docker-compose.yml

Plak de volgende inhoud:

havenarbeider-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:

Laten we de code regel voor regel analyseren.

In de eerste regel specificeren we de Compose-bestandsversie. Er zijn verschillende versies van het Compose-bestandsformaat met ondersteuning voor specifieke Docker-releases.

Vervolgens definiëren we twee services, db en wordpress . Elke service voert één afbeelding uit en er wordt een afzonderlijke container gemaakt wanneer Docker Compose wordt uitgevoerd.

De db service:

  • Gebruikt de mysql:5.7 afbeelding. Als de afbeelding niet op het systeem aanwezig is, wordt deze uit de openbare repository van Docker Hub gehaald. Gebruikt het herstart always beleid dat de container zal instrueren om altijd opnieuw te starten. Maakt een benoemd volume db_data om de database persistent te maken. db_data de omgevingsvariabelen voor de mysql:5.7 afbeelding.

De wordpress service:

  • Gebruikt de wordpress afbeelding. Als de afbeelding niet op uw systeem aanwezig is, haalt Compose deze uit de openbare repository van Docker Hub. Gebruikt het herstart always beleid dat de container zal instrueren om altijd opnieuw op te wp_data container.Forwards de blootgestelde poort 80 op de container naar poort 8080 op de hostmachine.Definieert de omgevingsvariabelen voor de wordpress instructie afhankelijk_in definieert de afhankelijkheid tussen de twee services. In dit voorbeeld wordt db gestart vóór wordpress .

Start de WordPress-toepassing vanuit de projectmap door de volgende opdracht uit te voeren:

docker-compose up

De output zou er ongeveer zo uit moeten zien:

… 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 wp_data beide afbeeldingen op, start twee containers en maakt de map wp_data in uw projectmap.

Voer http://0.0.0.0:8080/ in uw browser in en u ziet het installatiescherm van Wordpress.

Op dit moment is de Wordpress-toepassing actief en kunt u beginnen met werken aan uw thema of plug-in.

Druk op CTRL+C om Compose te stoppen.

U kunt de Compose ook in een ontkoppelde modus starten door de vlag -d passeren.

docker-compose up -d

Gebruik de optie ps om de actieve services te controleren:

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

Wanneer Compose in ontkoppelde modus wordt uitgevoerd om het gebruik van de services te stoppen:

docker-compose stop

docker-compose down

Als u de schakelaar --volumes , worden ook de gegevensvolumes verwijderd:

docker-compose down --volumes

Docker Compose verwijderen

Als u om welke reden dan ook Docker Compose wilt verwijderen, kunt u het binaire bestand eenvoudig verwijderen door te typen:

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

Conclusie

U hebt geleerd hoe Docker Compose op Ubuntu 18.04 te installeren en gebruiken.

Het gebruik van Docker Compose kan uw workflow en productiviteit aanzienlijk verbeteren. U kunt uw ontwikkelomgeving definiëren met Docker Compose en deze delen met de projectmedewerkers.

docker ubuntu