Android

Hoe Docker Compose te installeren en te gebruiken op Debian 10 Linux

How to Install Docker Compose in Ubuntu Linux

How to Install Docker Compose in Ubuntu Linux

Inhoudsopgave:

Anonim

Docker is een containerplatform waarmee u snel toepassingen kunt bouwen, testen en implementeren als draagbare, zelfvoorzienende containers die vrijwel overal kunnen worden uitgevoerd.

Docker Compose is een hulpmiddel waarmee u Docker-toepassingen met meerdere containers kunt definiëren en orkestreren. Het gebruikt een YAML-bestand om de containers, 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 wordt uitgelegd hoe u de nieuwste versie van Docker Compose installeert op Debian 10, Buster. We zullen ook de basisconcepten en opdrachten van Docker Compose verkennen.

voorwaarden

Controleer voordat u doorgaat of aan de volgende voorwaarden is voldaan:

  • Aangemeld als een gebruiker met sudo-rechten. Docker is geïnstalleerd op uw Debian 10-machine.

Docker Compose installeren op Debian 10

Het Docker Compose-installatiepakket is beschikbaar in de officiële Debian 10-opslagplaatsen, maar het 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 Compose-binary downloadt, bezoekt u de releasepagina van de Compose-repository op GitHub en controleert u of er een nieuwe versie beschikbaar is om te downloaden.

Gebruik de volgende stappen om de nieuwste versie van Docker Compose op Debian 10 te installeren:

  1. Download de Docker Compose binary in de map /usr/local/bin met wget of 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

    Gebruik chmod om het binaire bestand van Compose uitvoerbaar te maken:

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

    Gebruik de volgende opdracht om de Compose-versie af te drukken om de installatie te verifiëren:

    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 een lokale WordPress-ontwikkelomgeving kunt opzetten met Docker Compose.

Maak een map voor het project en navigeer erin:

mkdir wordpress_app && cd wordpress_app

Open uw teksteditor en maak een bestand met de naam docker-compose.yml :

nano docker-compose.yml

Plak de volgende inhoud:

havenarbeider-compose.yml

version: '3.7' services: db: image: mysql:8.0 command: --default-authentication-plugin=mysql_native_password 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 uitleggen

De eerste regel geeft de versie van het Compose-bestand aan. 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 maakt een afzonderlijke container wanneer Docker Compose wordt uitgevoerd.

De db service:

  • De afbeelding is ingesteld op mysql:8.0 afbeelding. Als de afbeelding niet aanwezig is, haalt Compose deze uit de openbare repository van Docker Hub. De regel die met de command begint, heeft voorrang op de standaardopdracht. De restart: always beleid geeft Compose de opdracht de container opnieuw te starten als deze db_data . De container gebruikt een benoemd volume db_data om de database te behouden. db_data de omgevingsvariabelen voor de mysql:8.0 afbeelding.

De wordpress service:

  • Gebruikt de wordpress afbeelding. wp_data map wp_data op de host /var/lib/mysql aan /var/lib/mysql in de container. wp_data de blootgestelde poort 80 op de container door naar poort 8080 op de hostmachine. depends_on de omgevingsvariabelen voor de wordpress afbeelding depends_on instructie definieert de afhankelijkheid tussen de twee services. In dit voorbeeld wordt db gestart vóór wordpress .

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

docker-compose up

De output zou er ongeveer zo uit moeten zien:

…] /usr/sbin/mysqld: ready for connections. Version: '8.0.18' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL. db_1_99946702ac7e | 2019-12-15T21:37:29.109255Z 0 X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060…

Docker Compose wp_data de afbeeldingen op, start de 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 standaard WordPress-installatiescherm.

Op dit moment is de WordPress-toepassing actief en kunt u eraan beginnen.

Druk op CTRL+C om Compose te stoppen.

U kunt Compose ook in een ontkoppelde modus starten met de optie -d :

docker-compose up -d

Gebruik de volgende opdracht om de actieve docker-containers te bekijken:

docker-compose ps

Name Command State Ports ------------------------------------------------------------------------------------------------------ wordpress_app_db_1_99946702ac7e docker-entrypoint.sh --def… Up 3306/tcp, 33060/tcp wordpress_app_wordpress_1_a428d8408817 docker-entrypoint.sh apach… Up 0.0.0.0:8080->80/tcp

Om de services te stoppen wanneer Compose in ontkoppelde modus wordt uitgevoerd, gebruikt u:

docker-compose stop

docker-compose down

Als u de schakelaar --volumes , verwijdert u ook de gegevensvolumes:

docker-compose down --volumes

Docker Compose verwijderen

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

Conclusie

Om Docker Compose op een Debian 10 te installeren, downloadt u eenvoudig het binaire bestand in een map in het systeempad en maakt u het uitvoerbaar.

docker debian