Docker Compose è uno strumento che può essere utilizzato per definire ed eseguire più contenitori come un unico servizio. Con Docker Compose, puoi collegare più contenitori e distribuire un'applicazione da un unico comando. Viene utilizzato principalmente nell'ambiente di sviluppo, test e staging. Docker Compose utilizza un file YAML per definire uno stack complesso in un file ed eseguirlo con un solo comando.
In questo tutorial, ti mostreremo come installare e utilizzare Docker Compose in CentOS 8.
Requisiti
- Un server che esegue CentOS 8.
- Sul server è configurata una password di root.
Installa Docker
Prima di iniziare, assicurati di avere Docker installato sul tuo server. Se non è installato, dovrai aggiungere il repository Docker-CE al tuo sistema. Puoi aggiungerlo con il seguente comando:
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Una volta aggiunto il repository, installa l'ultima versione della finestra mobile utilizzando il comando seguente:
dnf install docker-ce --nobest -y
systemctl start docker
systemctl enable docker
Puoi verificare la versione della finestra mobile con il seguente comando:
docker --version
Dovresti vedere il seguente output:
Docker version 19.03.5, build 633a0ea
Installa Docker Compose
Per impostazione predefinita, Docker Compose non è disponibile nel repository predefinito di CentOS 8. Quindi dovrai scaricarlo dal repository Git.
Innanzitutto, installa il comando curl con il seguente comando:
dnf install curl -y
Quindi, scarica l'ultima versione di Docker Compose dal repository Git usando curl come mostrato di seguito:
curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
Una volta completato il download, rendi eseguibile il file binario scaricato con il seguente comando:
chmod +x /usr/local/bin/docker-compose
Successivamente, puoi verificare la versione Componi utilizzando il seguente comando:
docker-compose --version
Dovresti vedere il seguente output:
docker-compose version 1.25.0, build 0a186604
Puoi vedere tutte le opzioni disponibili con docker-compose usando il seguente comando:
docker-compose --help
Dovresti vedere la seguente pagina:
Distribuisci Drupal con Docker Compose
In questa sezione, ti mostreremo come installare Drupal utilizzando Docker Compose.
Per prima cosa, crea una directory per il tuo drupal con il seguente comando:
mkdir drupal
Quindi, crea un file drupal.yaml all'interno della directory drupal:
nano drupal/docker-compose.yaml
Aggiungi i seguenti contenuti:
version: '3.3' services: drupal: image: drupal:latest ports: - 80:80 volumes: - drupal_modules:/var/www/html/modules - drupal_profiles:/var/www/html/profiles - drupal_themes:/var/www/html/themes - drupal_sites:/var/www/html/sites restart: always postgres: image: postgres:10 environment: POSTGRES_PASSWORD: your_postgres_password volumes: - db_data:/var/lib/postgresql/data restart: always volumes: drupal_modules: drupal_profiles: drupal_themes: drupal_sites: db_data:
Salva e chiudi il file quando hai finito. Quindi, cambia la directory in drupal e avvia il tuo contenitore Docker con il seguente comando:
cd drupal
docker-compose up -d
Il comando precedente scaricherà ed eseguirà i contenitori drupal e postgresql.
Puoi controllare i tuoi container in esecuzione con il seguente comando:
docker-compose ps
Dovresti vedere il seguente output:
Name Command State Ports ------------------------------------------------------------------------------- drupal_drupal_1 docker-php-entrypoint apac ... Up 0.0.0.0:80->80/tcp drupal_postgres_1 docker-entrypoint.sh postgres Up 5432/tcp
Ora puoi visitare l'URL http://your-server-ip per accedere alla procedura guidata di installazione Web di Drupal come mostrato di seguito:
Utilizzo di Docker Compose
In questa sezione, ti mostreremo come usare il comando docker-compose.
Per interrompere i servizi Docker Compose, eseguire il seguente comando all'interno della directory drupal:
docker-compose stop
Dovresti vedere il seguente output:
Stopping drupal_drupal_1 ... done Stopping drupal_postgres_1 ... done
Per avviare i servizi Docker Compose, eseguire il seguente comando all'interno della directory drupal:
docker-compose start
Per visualizzare il registro dei contenitori, eseguire il comando seguente:
docker-compose logs
Per visualizzare i log di un container specifico, eseguire il comando seguente:
docker-compose logs drupal
Puoi visualizzare il tuo file di configurazione utilizzando il seguente comando:
docker-compose config
Per mettere in pausa e riattivare i contenitori, eseguire il comando seguente:
docker-compose pause
Uscita:
Pausing drupal_postgres_1 ... done Pausing drupal_drupal_1 ... done
docker-compose unpause
Uscita:
Unpausing drupal_drupal_1 ... done Unpausing drupal_postgres_1 ... done
Per rimuovere tutti i contenitori esegui il seguente comando:
docker-compose down
Dovresti vedere il seguente output:
Stopping drupal_drupal_1 ... done Stopping drupal_postgres_1 ... done Removing drupal_drupal_1 ... done Removing drupal_postgres_1 ... done Removing network drupal_default
Puoi anche rimuovere i volumi di dati usando il seguente comando:
docker-compose down --volumes
Dovresti vedere il seguente output:
Removing network drupal_default WARNING: Network drupal_default not found. Removing volume drupal_drupal_modules Removing volume drupal_drupal_profiles Removing volume drupal_drupal_themes Removing volume drupal_drupal_sites Removing volume drupal_db_data
Conclusione
Nel tutorial precedente, abbiamo appreso come installare e utilizzare Docker Compose in CentOS 8. Spero che tu abbia abbastanza conoscenze su come utilizzare il comando Docker Compose per gestire i contenitori Docker.