Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 9930|Odpoveď: 2

Rozdiel medzi dockerfile a docker-compose

[Kopírovať odkaz]
Zverejnené 15. 11. 2019 9:33:13 | | |
Rozdiel medzi dockerfile a docker-compose
Stručne si prizrime proces používania dockeru, ktorý je rozdelený na tvorbu obrázkov a štartovanie kontajnera.

Konštrukcia obrazu: teda vytvoriť obraz, ktorý obsahuje prostredie, programový kód a podobne potrebné na inštaláciu a prevádzku. Tento proces vytvárania prebieha pomocou dockerfile.

Spustenie kontajnera: Kontajner sa nakoniec spustí stiahnutím vytvoreného obrazu a spustením služby prostredníctvom série bežiacich inštrukcií (ako mapovanie portov, externé pripojenie dát, environmentálne premenné atď.). Pre jeden kontajner to môže byť spustené cez docker run.

Ak zahŕňa spúšťanie viacerých kontajnerov (napríklad orchestrácia služieb), môže byť implementovaná pomocou docker-compose, ktorý ľahko spustí viacero kontajnerov ako službu (samozrejme len jeden z nich) a poskytuje funkciu škálovania (škálovanie služieb).

Stručné zhrnutie:

1.dockerfile: vytvoriť obraz;

2. docker run: spustenie kontajnera;

3. docker-compose: Začnite službu;

Začni od začiatku.
Ak nepoužívate docker, ako sa postaví wordpress? Najprv nájdi server, predpokladaj, že jeho operačný systém je Ubuntu, a potom krok za krokom nasleduj dokumentáciu, aby si napísal príkaz a napísal konfiguráciu, však?
A čo použitie dockeru? Stačí si nájsť server, nech už je operačný systém akýkoľvek, pokiaľ podporuje Docker, docker spustí Ubuntu, docker stiahne najnovší Ubuntu obraz z oficiálneho zdroja, môžeš si to predstaviť ako otvorenie Ubuntu virtuálneho stroja a potom ho inštalovať krok za krokom, presne ako vyššie.

Táto inštalácia však má významnú nevýhodu: akonáhle je kontajner vymazaný, už sa na ňom nič nerobí. Samozrejme, môžete použiť docker commit na uloženie ako obraz, aby sa dal znovu použiť.

Ale obrázok je zvyčajne veľký a ak zdieľate len obrázok, ostatní nebudú vedieť, čo váš obrázok obsahuje, čo nie je vhodné na zdieľanie a opätovné použitie.
Intuitívnym riešením je napísať skript, ktorý zaznamená celý inštalačný proces, aby ste ho pri opätovnej inštalácii mohli spustiť. Dockerfile je jeden z takýchto skriptov, ktoré dokumentujú proces vytvárania obrazu.
S Dockerfile stačí spustiť docker build. Môžete vytvoriť obrázok a Dockerfile je textový súbor, ktorý je veľmi jednoduché upraviť.

Teraz, keď máš WordPress obrázok, stačí spustiť docker run, aby WordPress fungoval.

Ak je to len WordPress, to stačí. Často je však na spustenie služby potrebných viacero obrázkov, napríklad nginx, mysql, mail service a podobne.
Častejšie sú nginx, mysql a smtp všetky obrázky, ktoré potom spolupracujú na projekte.
Docker-Compose je riešením tohto problému. V docker-compose.yml sú zahrnuté informácie o tom, ktoré obrázky váš projekt potrebuje, ako nastaviť každý obrázok, ktoré objemy pripevniť a podobne.
Na spustenie služby stačí docker-compose up, a stačí docker-compse stop/down, aby ste ju zastavili

Stručne povedané, Dockerfile zaznamenáva proces konštrukcie jedného obrazu docker-compse.yml zaznamenáva proces výstavby projektu (zvyčajne viacero obrázkov).

Povedali ste, že niektoré tutoriály používajú dockerfile+docker-compose, pretože docker-compose.yml samotný neobsahuje informácie o zostavení obrázka, a ak sa obrázok stiahne z docker registru, potom dockerfile nie je potrebný; Ak je potrebné vytvoriť obrázok, musí byť poskytnutý Dockerfile.

docker-composeJe to nádoba na orchestráciu. Napríklad máte php obrázok, mysql a nginx obrázok. Ak neexistuje docker-compose, pri každom spustení musíte zadať štartovacie parametre každého kontajnera, environmentálne premenné, názov kontajnera, špecifikovať parametre linku rôznych kontajnerov a sériu operácií, čo je dosť zdĺhavé. Po použití docker-composer môžete tieto príkazy zapísať do docker-composer.yml súboru naraz a zakaždým, keď spustíte celé prostredie (vrátane 3 kontajnerov), stačí zadať príkaz docker-composer up.

dockerfileÚlohou je vytvoriť zrkadlový obraz od nuly. Obsahuje prostredie, programový kód a podobne potrebné na inštaláciu a prevádzku. Tento proces vytvárania prebieha pomocou dockerfile. Dockerfile - Pripravený na docker build príkaz na vytvorenie samostatného obrázka, ktorý je možné použiť aj v docker-compose pre živú zostavu
docker-compose.yml - Skript pre docker-compose, ktorý dokáže spravovať viacero kontajnerov súčasne, vrátane vzťahov medzi nimi, či už na vytvorenie s oficiálnym obrázkom alebo so sebou, rôzne definície sieťových portov, definície úložného priestoru a podobne




Predchádzajúci:Nepodarilo sa zaregistrovať URL "http://xx/" pre stránku "NÁZOV STRÁNKY"...
Budúci:Docker ukladá miesto obrazu pod systémom Windows
 Prenajímateľ| Zverejnené 18. 12. 2022 14:56:50 |
Centos installation Docker Compose tutoriál
https://www.itsvse.com/thread-5164-1-1.html
 Prenajímateľ| Zverejnené 5. 3. 2025 10:37:33 |
BuildKit je vylepšený backend, ktorý nahrádza legacy builder. Od verzie 23.0 je BuildKit predvoleným builderom pre používateľov na Docker Desktop a Docker Engine.

Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.

Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com