Cum se instalează Docker Compose and Setup?

Mă întreb ce este Docker Compose?


Docker este cel mai popular instrument de containerizare din lumea DevOps. Dar, ce este Docker Compose?

Docker Compose este utilizat pentru a rula aplicații care au mai multe containere folosind un fișier YAML.

Pot exista mai multe cazuri în care aplicația docker trebuie să ruleze mai multe containere pentru diferite stive tehnologice. Acum, construirea, rularea, conectarea documentelor separate pentru fiecare container poate fi o sarcină dificilă; aici vă ajută docker-compose.

Folosind un singur fișier docker-compose.yml simplu, puteți construi, conecta și lansa toate containerele rulând o singură comandă. Acest lucru este foarte util pentru aplicațiile întreprinderilor în producție, unde mai multe aplicații rulează în interiorul containerelor. Economisește mult timp rulând 100 de aplicații în containerele de andocare cu ușurință.

Instalarea Docker Compose

Docker ar trebui să fie deja instalat pe sistemul dvs. înainte de a instala compose.

Rulați comanda de mai jos pentru a instala docker-compose.

[Email protected]: / home / geekflare $ sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s) – $ (uname -m)" -o / usr / local / bin / docker-compose

parola [sudo] pentru geekflare:

% Total% primit% Xferd Viteza medie Timpul timpului curent

Descărcați încărcarea viteză totală cheltuită pe stânga

100 617 0 617 0 0 1209 0 -: -: – -: -: – -: -: – 1209

100 11.1M 100 11.1M 0 0 348k 0 0:00:32 0:00:32 -: -: – 476k

Rulați comanda de mai jos pentru a seta permisiunile de fișiere.

[Email protected]: / home / geekflare $ sudo chmod + x / usr / local / bin / docker-compose

Verificați dacă s-a instalat corect, ar trebui să returneze versiunea pentru docker-compose.

[Email protected]: / home / geekflare $ docker-compose –version

docker-compune versiunea 1.23.1, construiți b02f1306

Mai jos este lista de comenzi pe care le puteți utiliza cu docker-compose.

[Email protected]: / home / geekflare $ docker-compose

Definiți și executați aplicații cu mai multe containere cu Docker.

utilizare:

docker-compose [-f …] [opțiuni] [COMMAND] [ARGS …]

docker-compune -h | –help

Opțiuni:

-f, –file FILE Specifică un alt fișier de compunere

(implicit: docker-compose.yml)

-p, –project-name NAME Precizați un nume de proiect alternativ

(implicit: nume director)

–verbose Afișează mai multe rezultate

–nivel de jurnal NIVEL Setați nivelul jurnalului (DEBUG, INFO, AVERTIZARE, EROARE, CRITICĂ)

–no-ansi Nu imprimați caracterele de control ANSI

-v, –version Versiunea de imprimare și ieșire

-H, –host priza Daemon la care să vă conectați

–tls Utilizați TLS; implicat de –tlsverify

–Tlscacert CA_PATH Certificări de încredere semnate numai de către această CA

–tlscert CLIENT_CERT_PATH Calea către fișierul certificat TLS

–tlskey TLS_KEY_PATH Calea către fișierul cu cheie TLS

–tlsverify Folosiți TLS și verificați telecomanda

–skip-hostname-check Nu verificați numele de gazdă al demonului față de

numele specificat în certificatul de client

–project-directory PATH Specificați un director de lucru alternativ

(implicit: calea fișierului Compose)

–compatibilitate Dacă este setat, Compose va încerca să convertească implementarea

cheile din fișierele v3 la echivalentul lor non-Swarm

comenzi:

construi Construiește sau reconstruiește servicii

pachet Generați un pachet Docker din fișierul Compose

config Validați și vizualizați fișierul Compose

crea Servicii create

jos Opriți și eliminați containerele, rețelele, imaginile și volumele

evenimente Primește evenimente în timp real de la containere

exec Executați o comandă într-un container care rulează

ajutor Obține ajutor la o comandă

imagini Lista imaginilor

ucide Containere ucide

jurnalele Vizualizați ieșirea din containere

întrerupe Pauză servicii

port Imprima portul public pentru o legătură de port

ps Listă containere

trageți imagini de serviciu Trageți

împingeți imaginile serviciului Push

reporniți Serviciile de repornire

rm Scoateți containerele oprite

rula Executați o comandă unică

scară Setați numărul de containere pentru un serviciu

începe serviciile Start

serviciile Stop Stop

sus Afișează procesele de rulare

nepauză Servicii nepauzate

sus Creare și pornire containere

versiune Afișează informațiile despre versiunea Docker-Compose

Docker Compose File

Iată un exemplu de fișier compun docker care face toată magia.

versiune: „3”

Servicii:

web:

construi: .

porturi:

– "5000: 5000"

Redis:

imagine: "Redis: Alpine"

Prima linie din acest fișier specifică versiunea utilizată. Acest număr depinde de motorul Docker instalat pe sistemul dumneavoastră. Am instalat Docker 18.09.6, care aparține versiunii 3 a docker-compose. Vezi mai multe detalii despre versiuni aici – https://docs.docker.com/compose/compose-file/compose-versioning/

Acest fișier docker rulează două servicii / aplicații, Web și Redis. Serviciul web este construit printr-un dockerfile și rulează în portul de servere web de flacoane implicit – 5000. Serviciul Redis se execută prin tragerea imaginii Redis din registrul hub-ului docker.

Pentru a executa fișierul docker-compose.yml, trebuie să executați o comandă foarte simplă: docker-compose up

Docker compune fluxul de lucru

Mai jos sunt prezentați cei trei pași pentru a utiliza docker-compose.

  1. Creați fișierul dockerf pentru fiecare serviciu
  2. Creați un fișier docker-compose.yml pentru a conecta toate documentele dockerfiles
  3. Rulați comanda docker-compose up pentru a porni sistemul

Permiteți-mi să iau un exemplu de fișier de tipul docker-compose pe care l-am văzut mai devreme și să vă arăt cum va fi creată structura proiectului.

mi-app

| —– web

| ——— Dockerfile

| —– Redis

| Docker-compose.yml

aplicația mea este principalul meu director de proiect. Acest director are directoare web și servicii Redis și fișierul YAML care compune docker-ul. Dockerfile de servicii Web sunt prezente într-un director web. Deoarece serviciul Redis este extras direct din hub-ul docker, nu este necesar niciun fișier în directorul Redis. Așa arată fluxul de lucru pentru docker-compose.

Conținerea unei aplicații Stack MEAN folosind Docker Compose

Acum că ai înțeles concepte fundamentale. Permiteți-mi să vă arăt o demonstrație despre modul de a containeriza o aplicație de stivă MEAN folosind docker-compose.

MEAN înseamnă MongoDB, Express, Angular și Node.js. Aplicațiile care utilizează aceste servicii împreună se numește, de asemenea, o aplicație MEAN / Full-stack.

Pentru această demo, vom rula trei containere de andocare:

  • Container 1 – unghiular
  • Container 2 – NodeJS și ExpressJS
  • Container 3 – MongoDB

Descărcați aplicația completă de aici: http://bit.ly/2St7r3A (nu este testat pentru producție)

Așa va arăta fișierul meu docker-compose.yml pentru a rula aceste trei containere:

versiune: „3”

Servicii:

unghiular:

construi: unghiular-client

porturi:

– "4200: 4200"

volume:

– ./ Unghiular-client /: / var / www / app

expres:

build: expres-server

porturi:

– "3000: 3000"

volume:

– ./ Exprima-server /: / var / www / app

Link-uri:

– Bază de date

Bază de date:

imagine: mongo

porturi:

– "27017: 27017"

  • Prima linie specifică versiunea utilizată pentru docker-compose
  • Executăm trei servicii – unghiular, expres și bază de date
  • Serviciul unghiular va fi construit folosind un dockerfile. Va rula pe portul 4200, iar volumul aplicației este / var / www / app
  • Serviciul Express va fi construit folosind un dockerfile. Serverul rapid va rula la portul 3000, iar volumul este / var / www / app
  • Serviciul de baze de date va trage imaginea MongoDB din dockerhub și o va începe la postul 27017

Extrageți proiectul din directorul principal și accesați directorul angular-client.

[Email protected]: ~ $ cd medie

[Email protected]: ~ / înseamnă $ cd angular-client

Rulați comanda de mai jos dacă nu aveți node manager manager (npm) instalat pe sistemul dvs. (ignorați dacă este instalat).

[Email protected]: ~ / mean / angular-client $ sudo apt instalare npm

parola [sudo] pentru geekflare:

Citirea listelor de pachete … Gata

Construirea arborelui dependenței

Citirea informațiilor de stare … Gata

Vor fi instalate următoarele pachete suplimentare:

gyp javascript-libc-ares2 comun libhttp-parser2.8 libjs-async libjs-mosteneste libjs-is-typedarray

libjs-jquery libjs-nod-uuid libjs-undercore libssl1.0-dev libuv1 libuv1-dev node-abreviere nod-ajv

node-ansi node-ansi-culoare-tabelă nod-ansi-regex nod-ansi-stiluri nod-ansistiluri nod-aproba nod-arhie

nod-are-suntem-acolo-încă nod-async nod-aws-sign2 nod-echilibrat-potrivire nod-bloc-flux nod-albastru

node-boom nod-brace-expansion node-builtin-modules node-camelcase nod-caseless nod-chalk nod-cliui

nod-clon nod-co-nod nod-convertire-culoare-nod-culoare-nume-nod-combinat-flux nod-concat-hartă

node-config-chain node-console-control-string-uri nod-cookie-jar nod-copy-simultan-nodul-core-core-util-is

node-yallist node-yargs node-yargs-parser nodejs nodejs-dev nodejs-doc

Pachetele sugerate:

apache2 | lighttpd | httpd node-aws-semn nod-oauth-semn nod-http-semnatura debhelper

Următoarele pachete NOU vor fi instalate:

gyp javascript-comun libc-ares2 libhttp-parser2.8 libjs-async libjs-mosteneste libjs-is-typedarray

libjs-jquery libjs-nod-uuid libjs-undercore libssl1.0-dev libuv1 libuv1-dev node-abreviere nod-ajv

node-ansi node-ansi-culoare-tabelă nod-ansi-regex nod-ansi-stiluri nod-ansistiluri nod-aproba nod-arhie

nod-are-suntem-acolo-încă nod-async nod-aws-sign2 nod-echilibrat-potrivire nod-bloc-flux nod-albastru

0 actualizat, 212 recent instalat, 0 eliminat și 233 neactualizate.

Trebuie să obțineți 10,5 MB de arhive.

După această operație, vor fi utilizate 53,6 MB de spațiu suplimentar pe disc.

Doriți să continuați? [Y / n] Y

Obțineți: 1 http://us.archive.ubuntu.com/ubuntu cosmic / univers amd64 gyp all 0.1 + 20180428git4d467626-1 [237 kB]

Obțineți: 2 http://us.archive.ubuntu.com/ubuntu cosmic / main amd64 javascript-common all 11 [6,066 B]

Obțineți: 3 http://us.archive.ubuntu.com/ubuntu cosmic / main amd64 libhttp-parser2.8 amd64 2.8.1-1 [20.8 kB]

Obțineți: 4 http://us.archive.ubuntu.com/ubuntu cosmic / univers amd64 libjs-async all 0.8.0-3 [25.4 kB]

Obțineți: 5 http://us.archive.ubuntu.com/ubuntu cosmic / univers amd64 libjs-is-typedarray all 1.0.0-2 [2.934 B]

Obțineți: 6 http://us.archive.ubuntu.com/ubuntu cosmic / main amd64 libjs-jquery all 3.2.1-1 [152 kB]

Obțineți: 7 http://us.archive.ubuntu.com/ubuntu cosmic / univers amd64 libjs-nod-uuid toate 1.4.7-5 [11.5 kB]

Obțineți: 8 http://us.archive.ubuntu.com/ubuntu cosmic / main amd64 libjs-undercore all 1.8.3 ~ dfsg-1 [59.9 kB]

Obțineți: 9 http://us.archive.ubuntu.com/ubuntu cosmic-actualizări / main amd64 libssl1.0-dev amd64 1.0.2n-1ubuntu6.2 [1,366 kB]

Preluat 10,5 MB în 1 min 34s (112 kB / s)

Extragerea șabloanelor din pachete: 100%

Selectarea gyp-ului pachetului anterior neselectat.

(Citirea bazei de date … 180130 fișiere și directoare instalate în prezent.)

Pregătirea pentru a despacheta … / 000-gyp_0.1 + 20180428git4d467626-1_all.deb …

Desfacerea gyp-ului (0.1 + 20180428git4d467626-1) …

Selectarea pachetului javascript-comun anterior neselectat.

Pregătirea pentru a despacheta … / 001-javascript-common_11_all.deb …

Despachetarea javascript-ului comun (11) …

Selectarea pachetului anterior neselectat libhttp-parser2.8: amd64.

Pregătirea pentru a despacheta … / 002-libhttp-parser2.8_2.8.1-1_amd64.deb …

Configurarea ignorării nodului-fstream (0.0.6-2) …

Configurarea nodului-gyp (3.6.2-2) …

Configurarea yargurilor nodului (10.0.3-2) …

Configurarea npm (5.8.0 + ds-2) …

Procesarea declanșatoarelor pentru libc-bin (2.28-0ubuntu1) …

În directorul angular-client și rulați npm install.

[Email protected]: ~ / mean / angular-client $ npm instalare

> [Email protected] instala / home / geekflare / medie / angular-client / nod_module / uws

> reconstruirea nodului-gip > build_log.txt 2>&1 || iesirea 0

> [Email protected] install / home / geekflare / mean / angular-client / node_modules / node-sass

> scripturi nod / install.js

Descărcarea binarului de pe https://github.com/sass/node-sass/releases/download/v4.7.2/linux-x64-57_binding.node

Descarcare completa ] – :

Binar salvat în /home/geekflare/mean/angular-client/node_modules/node-sass/vendor/linux-x64-57/binding.node

Memorizarea binară în /home/geekflare/.npm/node-sass/4.7.2/linux-x64-57_binding.node

> [Email protected] postinstall / home / geekflare / mean / angular-client / node_modules / webpack / node_modules / uglifyjs-webpack-plugin

> nod lib / post_install.js

> [Email protected] postinstall / home / geekflare / mean / angular-client / node_modules / node-sass

> scripturi noduri / build.js

Binar găsit la /home/geekflare/mean/angular-client/node_modules/node-sass/vendor/linux-x64-57/binding.node

Testarea binară

Binarul este bine

a adăugat 1457 de pachete de la 1250 de contribuabili în 80.009s

Acum accesați directorul expres și rulați instalarea npm.

[Email protected]: ~ / mediu / unghi-client $ cd ..

[Email protected]: ~ / înseamnă $ cd Express-server /

[Email protected]: ~ / medie / expres-server $ npm instalare

Acum că totul este setat, este timpul să rulați fișierul docker-compose.yml, care va lansa toate containerele docker și va rula aplicația stivă MEAN.

[Email protected]: ~ / medie / expres-server $ cd ..

[Email protected]: ~ / înseamnă $ docker-compuse

Crearea rețelei "mean_default" cu driverul implicit

Construcție unghiulară

Pasul 1/8: FROM nod: 8

8: Trageți din bibliotecă / nod

a4d8138d0f6b: Trageți complet

dbdc36973392: Trageți complet

f59d6d019dd5: Trageți complet

aaef3e026258: Trageți complet

6e454d3b6c28: Trageți complet

c717a7c205aa: Trageți complet

37add8e5ac11: Trageți complet

0314ab675d31: Trageți complet

012886364728: Trageți complet

Digest: sha256: 310db2abcff097ef44af205d81833282a6d5471002a1b59d7b7459a74152c856

Stare: a descărcat imaginea mai nouă pentru nod: 8

—> 8e45c884a32e

Pasul 2/8: RUN mkdir -p / var / www / app

—> Se rulează în c70a0cab7994

Scoaterea containerului intermediar c70a0cab7994

—> 001c5e840b24

Pasul 3/8: WORKDIR / var / www / app

—> Se rulează în 622ebdc41b2f

Scoaterea containerului intermediar 622ebdc41b2f

—> baa2e2347259

Pasul 4/8: pachet COPY.json / var / www / app

—> 5b97543befab

Pasul 5/8: instalare RUN npm

—> Desfășurat în 73e3d8b7a701

> [Email protected] instala / var / www / app / node_modules / uws

> reconstruirea nodului-gip > build_log.txt 2>&1 || iesirea 0

> [Email protected] instala / var / www / app / node_modules / node-sass

> scripturi nod / install.js

Descărcarea binarului de pe https://github.com/sass/node-sass/releases/download/v4.12.0/linux-x64-57_binding.node

Descarcare completa

Binar salvat în /var/www/app/node_modules/node-sass/vendor/linux-x64-57/binding.node

Memorizarea binară în /root/.npm/node-sass/4.12.0/linux-x64-57_binding.node

> [Email protected] postinstall / var / www / app / node_modules / core-js

> scripturi noduri / postinstalare || ecou "ignora"

Proiectul are nevoie de ajutorul tău! Vă rugăm să luați în considerare susținerea core-js în Open Collective sau Patreon:

> https://opencollective.com/core-js

> https://www.patreon.com/zloirock

> [Email protected] postinstall / var / www / app / node_modules / webpack / node_modules / uglifyjs-webpack-plugin

> nod lib / post_install.js

> [Email protected] postinstall / var / www / app / node_modules / node-sass

> scripturi noduri / build.js

Binar găsit la /var/www/app/node_modules/node-sass/vendor/linux-x64-57/binding.node

Testarea binară

Binarul este bine

a adăugat 1606 pachete de la 1329 contribuitori și a auditat 15092 pachete în 112.427

Scoaterea containerului intermediar 73e3d8b7a701

—> 55790d2fae93

Etapa 6/8: COPIA / Var / www / app

—> 61537aa487f4

Etapa 7/8: EXPUNE 4200

—> Se rulează în 632eedc35a45

Scoaterea containerului intermediar 632eedc35a45

—> 51e75b0e2ebe

Pasul 8/8: CMD ["NPM", "start"]

—> Se rulează în 36bbb12a0d38

Scoaterea containerului intermediar 36bbb12a0d38

—> 9f8d61db600c

Construit cu succes 9f8d61db600c

Etichetat cu succes media_angulară: cea mai recentă

Tragerea bazei de date (mongo :)…

cea mai recentă: extragerea din bibliotecă / mongo

35b42117c431: Trageți complet

ad9c569a8d98: Trageți complet

293b44f45162: Trageți complet

0c175077525d: Trageți complet

4e73525b52ba: Trageți complet

a22695a3f5e9: Trageți complet

c5175bcf2977: Trageți complet

3e320da07793: Trageți complet

01c6db6b2b5a: Trageți complet

3bd6e9d03e78: Trageți complet

e03dcf51513f: Trageți complet

c1956a9e136a: Trageți complet

4c35cf22b1d5: Trageți complet

Construire expres

Pasul 1/9: FROM nod: 8

—> 8e45c884a32e

Pasul 2/9: RUN mkdir -p / var / www / app

—> Utilizarea cache-ului

—> 001c5e840b24

Pasul 3/9: WORKDIR / var / www / app

—> Utilizarea cache-ului

—> baa2e2347259

Pasul 4/9: COPY package.json / var / www / app

—> 0232ad53c679

Pasul 5/9: RUN npm instalare

—> Se rulează în c309bf6f218e

a adăugat 128 de pachete de la 151 de contribuabili și a auditat 233 de pachete în 9.055

Îndepărtarea containerului intermediar c309bf6f218e

—> 49e652884562

Pasul 6/9: RUN npm instalare -g nodemon

—> Desfășurat în 0ed5d7f3642b

/ Usr / local / bin / nodemon -> /usr/local/lib/node_modules/nodemon/bin/nodemon.js

> [Email protected] postinstall / usr / local / lib / node_modules / nodemon

> coș de nod / postinstalare || iesirea 0

Dragoste nodemon? Acum puteți susține proiectul prin intermediul colectivului deschis:

> https://opencollective.com/nodemon/donate

+ [Email protected]

a adăugat 221 de pachete de la 128 de colaboratori în 18.856s

Scoaterea containerului intermediar 0ed5d7f3642b

—> 32c55606f35e

Etapa 7/9: COPIARE. / Var / www / app

—> a618b38a2812

Etapa 8/9: EXPOSE 3000

—> Alergare în bea389ab3ef1

Îndepărtarea containerului intermediar bea389ab3ef1

—> 684bbfb31371

Pasul 9/9: CMD ["NPM", "start"]

—> Se rulează în 9aa1b72e4a4e

Îndepărtarea containerului intermediar 9aa1b72e4a4e

—> 35dcb3df9806

35dcb3df9806 a fost construit cu succes

Etichetat cu succes media_express: cea mai recentă

Crearea mediei_angulare_1_de44b3f5b988 … făcut

Se creează media_database_1_708f8f9c3c33 … făcut

Crearea medie_expres_1_b57a483a72ee … făcut

Atașarea la mean_angular_1_f257e2233ef1, mean_database_1_ccc5c677e00b, mean_express_1_574f07b045fc

angular_1_f257e2233ef1 |

angular_1_f257e2233ef1 | > [Email protected] start / var / www / app

angular_1_f257e2233ef1 | > ng servire -H 0,0,0,0

angular_1_f257e2233ef1 |

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.933 + 0000 I CONTROL [principal] Dezactivarea automată a TLS 1.0, pentru activarea forței TLS 1.0 specifică –sslDisabledProtocols ‘none’

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] pornire MongoDB: pid = 1 port = 27017 dbpath = / data / db host 64-bit = f74b56905249

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] db version v4.0.10

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] versiune git: c389e7f69f637f7a1ac3cc9fae843b635f20b766

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] Versiunea OpenSSL: OpenSSL 1.0.2g 1 mar 2016

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] alocator: tcmalloc

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] module: none

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] mediu de construire:

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] distmod: ubuntu1604

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] distarch: x86_64

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] target_arch: x86_64

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 25.937 + 0000 I CONTROL [initandlisten] opțiuni: {net: {bindIpAll: true}}

expres_1_574f07b045fc |

expres_1_574f07b045fc | > [Email protected] start / var / www / app

expres_1_574f07b045fc | > nodemon ./bin/www

expres_1_574f07b045fc |

expres_1_574f07b045fc | [nodemon] 1.19.1

expres_1_574f07b045fc | [nodemon] pentru a reporni în orice moment, introduceți `rs`

expres_1_574f07b045fc | [nodemon] urmărind: *. *

expres_1_574f07b045fc | [nodemon] care începe `nodul / bin / www`

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 33.543 + 0000 Conexiune de rețea [ascultător] acceptată din 172.19.0.4:38958 # 1 (1 conexiune este deschisă acum)

baza de date_1_ccc5c677e00b | 2019-07-20T22: 33: 33.560 + 0000 I NETWORK [conn1] a primit metadate ale clientului din 172.19.0.4:38958 conn1: {driver: {nume: "nodejs", versiune: "3.0.1" }, os: {tip: "Linux", Nume: "Linux", arhitectură: "x64", versiune: "4.18.0-25-generic" }, platformă: "Node.js v8.16.0, LE, mongodb-core: 3.0.1" }

expres_1_574f07b045fc | mongodb: conectat

angular_1_f257e2233ef1 | ** NG Live Development Server ascultă în data de 0.0.0.0:4200, deschide browserul pe http: // localhost: 4200 / **

angular_1_f257e2233ef1 | Data: 2019-07-21T11: 21: 03.868Z – Hash: 639d9a968476ed482b5c – Timp: 336ms

angular_1_f257e2233ef1 | 4 bucăți neschimbate

angular_1_f257e2233ef1 | chunk {main} main.bundle.js (main) 19,8 kB [inițial] [redat]

angular_1_f257e2233ef1 |

angular_1_f257e2233ef1 | webpack: Compilat cu succes.

angular_1_f257e2233ef1 | webpack: Compilare…

angular_1_f257e2233ef1 | Data: 2019-07-21T11: 25: 15.661Z – Hash: e5a2b1c1afe0deb396c3 – Ora: 251ms

angular_1_f257e2233ef1 | 4 bucăți neschimbate

angular_1_f257e2233ef1 | chunk {main} main.bundle.js (main) 19,8 kB [inițial] [redat]

angular_1_f257e2233ef1 |

angular_1_f257e2233ef1 | webpack: Compilat cu succes.

Accesați browserul și verificați https: // localhost: 4200, aplicația dvs. va fi funcțională.

unghiular - docker compune

Mergi la https: // localhost: 3000 pentru a verifica dacă un server expres rulează.

expres - docker compune

De asemenea, puteți rula comanda docker images pentru a vedea care sunt toate imaginile din docker.

[Email protected]: ~ / înseamnă $ docker images

TAG REPOSITORIU MĂRIRE CREATE ID IMAGINI

mean_express cel mai recent 35dcb3df9806 acum 14 ore 923MB

mean_angular ultima 9f8d61db600c acum 14 ore 1.29GB

nod 8 8e45c884a32e acum 9 zile 895MB

mongo cel mai recent 785c65f61380 acum 2 săptămâni 412MB

Rulați comanda de mai jos pentru a vedea containerele care rulează în interiorul docker-ului.

[Email protected]: ~ / înseamnă $ docker ps

ID-ul CONTAINERULUI COMANDĂ IMAGINI STATUS CREATE NUMELE PORTI

681c9c34bee2 mean_express        "Docker-entrypoint.s …"   14 ore în urmă Sus 14 ore 0.0.0.0:3000->3000 / tcp mean_express_1_574f07b045fc

f74b56905249 mongo               "Docker-entrypoint.s …"   Acum 14 ore Sus 14 ore 0.0.0.0:27017->27017 / tcp mean_database_1_ccc5c677e00b

260ef1e52dab mediu_angular        "Docker-entrypoint.s …"   14 ore în urmă Sus 14 ore 0.0.0.0:4200->4200 / tcp mediu_angular_1_f257e2233ef1

Acum, toate cele trei containere de la docker sunt în funcțiune.

Docker-compose s-a ocupat de rularea tuturor containerelor cu ușurință. Acesta a fost un exemplu simplu pentru rularea a trei containere; vă puteți imagina cât de util va fi dacă aplicațiile trebuie lansate pe 100 de containere. Mergeți înainte și încercați să vedeți cum funcționează.

ETICHETE:

  • Docher

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map