Definizione della tua applicazione multi-container con docker.YML

Definizione della tua applicazione multi-container con docker.YML
Docker è una soluzione molto apprezzata e ampiamente utilizzata per costruire e distribuire progetti. Fornisce componenti essenziali come contenitori, immagini, registro e docker. Più specificamente, il Docker Compose è un elemento chiave di Docker che viene principalmente utilizzato per creare e configurare applicazioni multi-container o che consistono in più servizi. Utilizza anche il file YAML per configurare l'app multi-container.

Questo articolo dimostrerà come definire applicazioni multi-container con "docker-compose.YML" file.

Come definire più applicazioni di contenitori con "docker.File YML "?

Le applicazioni multi-container sono costituite da più servizi e ogni servizio è tenuto a eseguire all'interno di un contenitore separato. Inoltre, la definizione di applicazioni multi-container comporta tre passaggi di base:

  • Passaggio 1: crea Dockerfile
  • Passaggio 2: configurare i servizi in “docker-compose.YML" File
  • Passaggio 3: avviare i contenitori

Passaggio 1: crea Dockerfile

Innanzitutto, crea un fikerfile che viene anche indicato come il file di istruzioni che contiene istruzioni per generare l'immagine per contenizzare l'applicazione. Incolla il seguente codice in "Dockerfile"Per eseguire l'applicazione Golang sul server Web:

Da Golang
Workdir/go/src/app
Aggiungi principale.andare .
Esegui GO Build -O Webserver .
Esporre 8080
Cmd ["./server web"]

Nel codice sopra:

  • "DA"Il comando definisce l'immagine di base per un contenitore.
  • "Workdir"Il comando definisce la directory di lavoro per il contenitore.
  • "AGGIUNGERE"Il comando aggiunge il file specificato al percorso del contenitore.
  • "CORRERE"Il comando esegue il comando specificato.
  • "ESPORRE"Viene utilizzato per allocare la porta di esposizione al contenitore.
  • "Cmd"Specifica il punto di entrata o le impostazioni predefinite per il contenitore. Qui, "CMD" definisce il "./server web"Punto eseguibile:

Nota: Il nome del file deve essere "Dockerfile"E non allegare alcuna estensione con il nome del file.

Passaggio 2: configurare i servizi in “docker-compose.File YML "

Nel passaggio successivo, crea un "docker-compose.YML"File per configurare i servizi applicativi multi-container. Ad esempio, abbiamo specificato il seguente codice:

Versione: "Alpine"
Servizi:
ragnatela:
costruire: .
Container_Name: Web-Container
privilegiato: vero
Porte:
- "8080: 8080/TCP"
Golang:
Immagine: "Golang: Alpine"

Secondo lo snippet sopra fornito:

  • "Servizi"La chiave definisce due servizi:"ragnatela" E "Golang".
  • Il servizio "Web" utilizza una build di Dockerfile o Dockerfile come base.
  • "Container_name"Specifica il nome del contenitore in cui eseguirà il servizio" Web ".
  • "privilegiato"Viene utilizzato per allocare i privilegi host al contenitore.
  • "porta"Definisce la porta di esposizione per un contenitore.
  • IL "GolangIl servizio "utilizza semplicemente"Golang: alpino"Immagine come immagine di base:

Passaggio 3: avviare i contenitori

Ora, avviare i servizi specificati nel "docker-compose.YML"File utilizzando il"Docker-Opse Up"Comando:

> docker -compose up -d

Dall'output seguente, puoi vedere che due servizi vengono avviati in diversi contenitori. Il primo contenitore esegue il "ragnatela"Servizio del programma Golang. Il secondo contenitore esegue il "Golang" servizio:

Per la verifica, vai alla porta specificata dell'host locale:

Si può osservare che abbiamo definito con successo l'app multi-contener con "docker-compose.YML" file.

Conclusione

Per configurare l'applicazione di più contenitori, creare prima un semplice file Dockerfile chiamato un file di istruzioni. Quindi, configura i servizi applicativi in ​​un "docker-compose.YML" file. Ogni singolo servizio eseguirà in un contenitore separato. Dopodiché, accendi i contenitori con l'aiuto del "Docker-Opse Up"Comando. Questo articolo ha dimostrato come configurare l'applicazione multi-container con "docker-compose.YML" file.