Escriu per cercar…

Compose

Docker Compose et permet declarar un conjunt de contenidors en un fitxer, dir-li a docker el resultat que vols i deixar que ell executi les ordres.

S'ensenya a
Big data aplicatProcessament distribuït i tolerància a falladesIABDDesplegament d’aplicacions webDesplegament d'aplicacions amb contenidorsDAWDAW-BIOSeguretat i alta disponibilitatAlta disponibilitatASIX

Introducció

Hi ha moltes aplicacions que no poden funcionar soles, sinó que necessiten altres aplicacions per funcionar.

Per exemple, el Wordpress necessita una base de dades.

Fins ara has aixecat cada contenidor a mà, amb un docker run llarg i ple d’opcions: la xarxa, els volums, els ports, les variables d’entorn.

Aquestes ordres no queden enlloc.

Si demà has de tornar a muntar el mateix, has de recordar-les — o buscar-les a l’historial del shell.

Docker Compose posa aquestes ordres en un fitxer.

Tu declares què vol dir que l’aplicació estigui aixecada, i docker s’encarrega de comparar-ho amb el que hi ha ara i fer els canvis que calguin.

Xarxa privada

Crea un directori cluster i dins d’aquesta carpeta un fitxer compose.yaml.

shell
mkdir cluster
cd cluster
nano compose.yaml

💡 El nom històric és docker-compose.yml i encara funciona, però el nom recomanat des de Compose v2 és compose.yaml.

A continuació tens el contingut del fitxer en format YAML:

yaml
services:
  apache:
    image: httpd:2.4
    ports:
      - 80:80
  • Pots veure que el fitxer defineix un conjunt de serveis.

  • Cada servei té un nom, en aquest cas apache, que es farà servir per donar nom al contenidor.

  • A continuació, per cada servei has de dir quina imatge es farà servir i definir els “port forward” pertinents.

Amb docker compose pots arrencar els contenidors definits pel fitxer compose.yaml amb aquesta ordre:

shell
docker compose up -d
[+] Running 2/2
 ✔ Network cluster_default     Created
 ✔ Container cluster-apache-1  Started

Pots veure que es crea una xarxa amb el nom cluster_default i un contenidor amb el nom cluster-apache-1.

Per defecte, Docker Compose fa servir el nom de la carpeta on està el fitxer com a nom del projecte, i el posa com a prefix de tot el que crea: en aquest cas cluster.

Pots verificar que s’ha creat la xarxa:

shell
docker network ls | grep cluster
49fca8deb35b   cluster_default   bridge    local

Estàs llegint una vista prèvia.

Inicia la sessió amb Google per llegir la pàgina sencera.

Inicia la sessió amb Google

Només et demanarem que acceptis les condicions del servei.