Docker Run vs Docker-Opse

Docker Run vs Docker-Opse
Docker è una piattaforma ben nota, open source e universalmente usata. Fornisce molte utility e componenti della riga di comando per creare, eseguire e distribuire applicazioni come "Docker Run" E "docker-compose"Comandi. Entrambi i comandi vengono utilizzati per creare e avviare i contenitori per containerizzare le applicazioni e altri microservizi.

Questo articolo dimostrerà:

  • Differenza tra "Docker-Run" e "Docker-Opse" in Docker
  • Come usare "Docker Run" in Docker?
  • Come usare "docker-compose" in Docker?

Differenza tra "Docker Run" e "Docker-Opse" in Docker

Entrambi "Docker Run" E "docker-compose"I comandi vengono utilizzati per uno scopo simile per costruire e accendere i contenitori per containerizzare l'applicazione o i servizi. La differenza principale tra questi due comandi è il comando "Docker run" esegue l'immagine per creare un singolo contenitore ed è un comando puramente basato sul terminale. Mentre il comando "docker-compose" legge le istruzioni da "Docker-Opse.File YML "e viene utilizzato per gestire ed eseguire applicazioni multi-container. In altre parole, può creare ed eseguire più di un contenitore alla volta.

Come usare "Docker Run" in Docker?

Docker "correre"Il comando può generare solo un singolo contenitore alla volta. Guarda le istruzioni per utilizzare il contenitore Docker Run per dockerizzare un'applicazione.

Passaggio 1: crea Dockerfile
Innanzitutto, crea un semplice Dockerfile che contiene semplici istruzioni per dockerizzare l'applicazione. Ad esempio, abbiamo creato "Main1.Dockerfile"Per contenizzare il"Main1.andare"Codice Golang:

Da golang: 1.8
Workdir/go/src/app
Copia Main1.andare .
Esegui GO Build -O Webserver .
PUNTO D'ENTRATA ["./server web"]

Passaggio 2: crea un'immagine
Genera una nuova immagine utilizzando Dockerfile. Qui, "-T"Specifica il nome dell'immagine e"-F"Viene utilizzato per definire il nome o il percorso Dockerfile:

Docker build -t go -image -f main1.Dockerfile .

Passaggio 3: creare e avviare contenitore
Successivamente, utilizza il “Docker Run"Comando per il contenitore dell'applicazione utilizzando l'immagine Docker. IL "-D"Il flag eseguirà il contenitore in modalità distaccata e"-P"Specifica la porta host locale per esporre il contenitore:

Docker run -d -p 8080: 8080 Image Go

Elenca tutti i contenitori da verificare se il contenitore viene creato ed eseguendo la porta esplosiva o meno:

Docker PS -A

In alternativa, è possibile visitare la porta assegnata dell'host locale per verificare se il contenitore è in esecuzione o meno:

Come usare "docker-compose" in Docker?

Docker Compose è una parte fondamentale della soluzione Docker utilizzata per gestire e gestire progetti e servizi multi -container. IL "docker-compose"Il comando legge le istruzioni dal file di composizione. Quindi, avviare i servizi costruendo ed eseguendo i contenitori.

Per utilizzare il "docker-compose"In Docker, passare attraverso la procedura data.

Passaggio 1: creare “Docker-Opse.File YML "
Innanzitutto, crea un file chiamato "docker-compose.YML"File e configurare i servizi necessari per eseguire. Ad esempio, abbiamo configurato le seguenti configurazioni:

  • "Servizi"Configura due diversi servizi,"ragnatela" E "Web2".
  • Il servizio "Web" utilizza il "principale.Dockerfile"Per contesterizzare ed eseguire il"principale.andare" programma.
  • Il servizio "Web2" utilizza il "Main1.Dockerfile"Per dockerizzare ed eseguire il"Main1.andare" programma.
  • "porti"La chiave viene utilizzata per specificare la porta di esposizione per il contenitore. Nel nostro scenario, Docker assegnerà automaticamente la porta di esposizione al servizio "Web" e il servizio "Web2" esporrà sulla porta 8080:
Versione: "Alpine"
Servizi:
ragnatela:
costruire:
Dockerfile: Main.Dockerfile
Comando: ["./server web"]
Porte:
- 8080
Web2:
costruire:
Dockerfile: Main1.Dockerfile
Porte:
- 8080: 8080

Passaggio 2: avvia contenitori
Successivamente, avviare i contenitori con l'aiuto del comando menzionato:

docker -compose up -d

Passaggio 3: elenca i contenitori
Elenca i contenitori di compositore e verifica se i servizi definiti stanno eseguendo in contenitori separati o meno:

Docker -compose PS -A

Qui, puoi vedere "ragnatela"Sta eseguendo la porta"62689" E "Web2"Sta esponendo su"8080":

È possibile navigare nelle porte di esposizione dei contenitori per la verifica:

Si può osservare che abbiamo eseguito con successo due diversi contenitori alla volta da "docker-compose"Comando:

Conclusione

IL "docker-compose" E "Docker Run"Entrambi i comandi vengono eseguiti per creare ed eseguire i contenitori. La differenza chiave tra questi due comandi è il comando "Docker run" crea un singolo contenitore contemporaneamente. Tuttavia, "Docker-Opse" può creare, gestire ed eseguire più contenitori contemporaneamente. Questo articolo ha dimostrato la differenza principale tra i comandi "Docker-Opse" e "Docker Run".