GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare e utilizzare Docker Compose su Debian 9

Docker Compose è uno strumento che consente di definire e orchestrare applicazioni Docker multi-container. Utilizza un file YAML per configurare i contenitori, le reti e i volumi dell'applicazione.

Componi può essere utilizzato per vari scopi. Le distribuzioni di applicazioni host singole, i test automatizzati e lo sviluppo locale sono i casi d'uso più diffusi per Docker Compose.

Questo tutorial illustrerà il processo di installazione dell'ultima versione di Docker Compose su Debian 9. Esploreremo anche i concetti e i comandi di base di Docker Compose.

Prerequisiti #

Assicurati di aver soddisfatto i seguenti prerequisiti prima di continuare con questo tutorial:

  • Acceduto come utente con privilegi sudo.
  • Avere Docker installato sulla tua macchina Debian 9.

Installa Docker Compose su Debian #

Il pacchetto di installazione Docker Compose è disponibile nei repository Debian 9 ufficiali ma potrebbe non essere sempre l'ultima versione. L'approccio consigliato consiste nell'installare Docker Compose dal repository GitHub di Docker.

Al momento della stesura di questo articolo, l'ultima versione stabile di Docker Compose è la versione 1.23.1 . Prima di scaricare il binario Compose, visita la pagina di rilascio del repository Compose su GitHub e controlla se è disponibile una nuova versione per il download.

Eseguire i seguenti passaggi per installare l'ultima versione di Docker Compose su Debian 9:

  1. Inizia scaricando il binario Docker Compose in /usr/local/bin directory utilizzando il seguente curl comando:

    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
  2. Al termine del download, concedi i permessi eseguibili al binario Compose:

    sudo chmod +x /usr/local/bin/docker-compose
  3. Verifica l'installazione digitando:

    docker-compose --version

    L'output sarà simile a questo:

    docker-compose version 1.23.1, build b02f1306

Introduzione a Docker Compose #

In questa sezione mostreremo come utilizzare Docker Compose per gestire uno stack WordPress sulla tua macchina Debian 9.

Inizia creando una directory per il progetto e modificandola:

mkdir wordpress_appcd wordpress_app

Apri il tuo editor di testo e crea un file chiamato docker-compose.yml all'interno della directory del progetto:

nano docker-compose.yml

Incolla il seguente contenuto:

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:

Quindi cosa fa il codice sopra?

Nella prima riga, specifichiamo la versione del file Compose. Esistono diverse versioni del formato di file Compose con supporto per versioni Docker specifiche.

Successivamente, stiamo definendo due servizi, db e wordpress . Ogni servizio esegue un'immagine e creerà un contenitore separato quando viene eseguito docker-compose.

Il db servizio:

  • Utilizza mysql:5.7 Immagine. Se l'immagine non è presente sul tuo sistema, Compose la estrarrà dal repository pubblico di Docker Hub.
  • Utilizza il riavvio always policy che indicherà al container di riavviarsi sempre.
  • Crea un volume denominato db_data per rendere persistente il database.
  • Definisce le variabili di ambiente per mysql:5.7 immagine.

Il wordpress servizio:

  • Utilizza wordpress Immagine. Se l'immagine non è presente sul tuo sistema, Compose la estrarrà dal repository pubblico di Docker Hub.
  • Utilizza il riavvio always policy che indicherà al container di riavviarsi sempre.
  • Monta il wp_data directory sull'host in /var/lib/mysql all'interno del contenitore.
  • Inoltra la porta esposta 80 sul container alla porta 8080 sul computer host.
  • Definisce le variabili d'ambiente per wordpress immagine.
  • Il depends_on l'istruzione definisce la dipendenza tra i due servizi. In questo esempio, db verrà avviato prima di wordpress .

Dalla directory del progetto, avvia l'applicazione WordPress eseguendo il comando seguente:

docker-compose up

L'output dovrebbe essere simile a questo:

...
wordpress_1_70f2f980e1fb | [Mon Nov 19 18:00:31.002748 2018] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.25 (Debian) PHP/7.2.12 configured -- resuming normal operations
wordpress_1_70f2f980e1fb | [Mon Nov 19 18:00:31.002912 2018] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'

Compose estrarrà entrambe le immagini, avvierà due contenitori e creerà il wp_data directory nella directory del tuo progetto.

Inserisci http://0.0.0.0:8080/ nel tuo browser e vedrai la schermata di installazione di Wordpress.

A questo punto l'applicazione WordPress è attiva e funzionante e puoi iniziare a lavorare sul tuo tema o plugin.

Per interrompere la composizione, premi CTRL+C .

Puoi anche avviare Compose in una modalità separata passando il -d bandiera.

docker-compose up -d

Per controllare i servizi in esecuzione usa il ps opzione:

docker-compose ps
       Name                     Command               State          Ports        
----------------------------------------------------------------------------------
wordpress_app_db_1          docker-entrypoint.sh mysqld      Up      3306/tcp, 33060/tcp 
wordpress_app_wordpress_1   docker-entrypoint.sh apach ...   Up      0.0.0.0:8080->80/tcp

Quando Compose è in esecuzione in modalità separata per interrompere i servizi, utilizzare:

docker-compose stop

Se vuoi rimuovere completamente i contenitori usa il down opzione:

docker-compose down

Passando i --volumes switch rimuoverà anche i volumi di dati:

docker-compose down --volumes

Disinstallazione di Docker Compose #

Se devi disinstallare Docker Compose puoi semplicemente rimuovere il file binario digitando:

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

Debian
  1. Come installare e utilizzare Debian Backports

  2. Come installare e utilizzare Ansible su Debian 11

  3. Come installare Docker e Docker Compose su Debian 11

  4. Come installare e configurare la finestra mobile su Debian 11

  5. Come installare e utilizzare Docker Compose su CentOS

Come installare e utilizzare FFmpeg su Debian 11

Come installare e utilizzare Docker Compose su CentOS 8

Come installare Docker Compose su Debian 9 Stretch

Come installare e utilizzare Docker Compose su Ubuntu 20.04

Come installare e utilizzare Docker Compose su Ubuntu 22.04

Come installare e utilizzare Docker Compose su Debian 11