GNU/Linux >> Linux Esercitazione >  >> Panels >> Docker

Come installare e utilizzare Docker Compose su CentOS

Docker Compose è un semplice programma Python che aiuta a distribuire facilmente più contenitori docker su un server.

Utilizza un semplice file YAML per la descrizione del servizio.

Invece della lunga docker run . . . righe, puoi semplicemente usare docker-compose up -d per distribuire più servizi contemporaneamente.

In questo tutorial, ti mostrerò come installare Docker Compose sul server CentOS. Ti mostrerò anche un rapido esempio di utilizzo di Docker Compose per la distribuzione di un server NGINX con una configurazione specifica.

Installazione di docker-compose su CentOS

È necessario che Docker sia installato in anticipo. Assicurati di installare Docker sul tuo sistema CentOS prima di installare Docker Compose.

docker-compose non è impacchettato né nei repository ufficiali di CentOS né nel repository rpm di docker.

Esistono due modi per installare Docker Compose su Linux:

  • Scarica i file di installazione di Docker Compose Linux e configuralo manualmente
  • Utilizza PIP per installare facilmente Docker Compose

Personalmente, preferisco usare PIP per installare Docker Compose. Poiché Docker Compose è fondamentalmente un'applicazione Python, ha senso utilizzare PIP per installarla.

Vediamo come fare.

Installa pip3

Installa pip3 usando il seguente comando:

sudo dnf install python3-pip

Installa docker-compose usando pip3

Usa pip per installare docker-compose

pip3 install --user docker-compose

Aggiorna PERCORSO

pip installa docker-compose in ~/.local/bin directory. Dovrai aggiungerlo alla variabile di ambiente PATH in modo da poterlo eseguire da qualsiasi luogo:

echo 'PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc

Se stai usando zsh , cambia .bashrc a .zshrc .

Una volta che hai finito, usa il comando sorgente source ~/.bashrc o riaprire il terminale (disconnettersi e riconnettersi se si tratta di un server).

Conferma che docker-compose è installato utilizzando il comando seguente:

[email protected]:~$ docker-compose --version
docker-compose version 1.26.2, build unknown

Congratulazioni! Ora hai installato Docker-Compose sul tuo server CentOS 8.

Vuoi provarlo? Segui questo semplice tutorial e scopri come utilizzare Docker Compose.

Distribuisci un server nginx di esempio usando docker-compose

Nginx è uno dei server Web più popolari, è facilmente distribuibile tramite docker.

Confrontiamo il modo di comporre e il modo di non comporre

Distribuzione di Nginx senza Docker Compose

Puoi usare run comando per distribuire facilmente un server nginx come questo:

docker run --name server --network net -v html:/usr/share/nginx/html -v $PWD/custom-config.conf:/etc/nginx/nginx.conf -p 80:80 --restart on-failure -d nginx:latest

Qui, hai distribuito un server nginx, con un nome contenitore "server", usando una rete esterna "net", montato un volume chiamato "html", usando un file di configurazione personalizzato e ascoltando sulla porta 80 sull'host, che riavvio automatico in caso di errore.

Esaminiamo i problemi qui:

Dovrai creare le reti e i volumi in anticipo

Docker non creerà automaticamente la rete e il volume. Dovrai crearli in anticipo.

Troppe opzioni da scrivere ogni volta

Ci sono troppe opzioni da scrivere. Se si tratta di un container più complicato come un container database o un container proxy inverso o un container nextcloud, queste opzioni aumenteranno.

Ambiente di sviluppo

Cosa succede se stai testando la tua build e non vuoi preservare il volume dopo aver interrotto il contenitore? In seguito dovrai rimuovere manualmente il volume e la rete.

Distribuzione di Nginx con Docker Compose

Innanzitutto, dovrai creare un file di composizione.

Crea una directory chiamata "nginx-compose" e cd in essa:

mkdir nginx-compose && cd nginx-compose

Crea un file chiamato "docker-compose.yml" e aggiungi le seguenti righe

version: "3.3"

services:
    server:
        image : "nginx:latest"
        container_name: "server"
        volumes:
            - "html:/usr/share/nginx/html"
            - "./custom-config.conf:/etc/nginx/nginx.conf"
        networks:
            - "net"
        ports:
            - "80:80"
        restart: "on-failure"

volumes:
    html:
networks:
    net:

Questo file di composizione descrive un servizio chiamato server , che distribuirà un server nginx con esattamente le stesse configurazioni che abbiamo fatto nel modo non composto. Distribuiscilo utilizzando:

docker-compose up -d

docker-compose cercherà nella directory corrente un file chiamato "docker-compose.yml", lo analizzerà e distribuirà i servizi in esso definiti.

Esaminiamo ora i problemi del metodo non di composizione con il metodo di composizione:

  1. Non c'è bisogno di creare le reti e i volumi in anticipo, docker-compose lo fa per te. Puoi aggiungere volumi esterni impostando external su true in ogni volume/rete.
  2. Una volta che hai scritto il file .yaml, non c'è più bisogno di annotare comandi enormi. Puoi copiare questo file su qualsiasi altro server su cui è installata una versione recente di docker-compose e funzionerà come previsto con facilità.
  3. Puoi usare docker-compose down -v comando per fermare e rimuovere non solo i contenitori, ma anche tutte le reti e i volumi che la finestra mobile ha creato. Questo aiuta a pulire in un ambiente di sviluppo/test.

Ci sono molti altri vantaggi nell'usare docker-compose su docker run , soprattutto nella produzione, che non rientra nell'ambito dell'articolo di oggi.

Se vuoi vedere qualcosa del genere, faccelo sapere nella sezione commenti qui sotto. Tieni d'occhio la nostra serie di finestre mobili per altre guide come queste.


Docker
  1. Come installare e utilizzare TensorFlow su CentOS 7

  2. Come installare Docker Compose su CentOS 7

  3. Come installare e utilizzare Docker Compose su Ubuntu 18.04

  4. Come installare e utilizzare Docker su CentOS 7

  5. Come installare e utilizzare Docker Compose su CentOS 7

Come installare Docker Compose su CentOS 7

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 su Ubuntu 22.04

Come installare e utilizzare Docker Compose su Debian 11

Come installare e utilizzare Docker su CentOS 8