Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 9930|Odpověď: 2

Rozdíl mezi dockerfile a docker-compose

[Kopírovat odkaz]
Zveřejněno 15.11.2019 9:33:13 | | |
Rozdíl mezi dockerfile a docker-compose
Pojďme si stručně vysvětlit proces používání dockeru, který je rozdělen na tvorbu obrazu a spuštění kontejneru.

Konstrukce obrazu: tedy vytvořit obraz, který obsahuje prostředí, programový kód atd. potřebné pro instalaci a provoz. Tento proces tvorby probíhá pomocí dockersouboru.

Spuštění kontejneru: Kontejner se nakonec spustí tak, že se vytáhne vytvořený obraz a služba se spustí prostřednictvím série běžících instrukcí (například mapování portů, připojení externích dat, proměnné prostředí atd.). Pro jeden kontejner může být tento provoz spuštěn pomocí dockeru.

Pokud zahrnuje provozování více kontejnerů (například orchestrace služeb), může být implementováno pomocí docker-compose, který snadno spustí více kontejnerů jako službu (samozřejmě pouze jeden) a plní funkci škálování (škálování služeb).

Stručné shrnutí:

1.dockerfile: vytvořit obraz;

2. docker run: spouštět kontejner;

3. docker-compose: Začněte službu;

Začněte od začátku.
Pokud nepoužíváte Docker, jak se postaví WordPress? Najdi nejdřív server, předpokládej, že jeho operační systém je Ubuntu, a pak krok za krokem sleduj dokumentaci, abys zadal příkaz a napsal konfiguraci, že?
Co takhle použít docker? Stačí najít server, bez ohledu na operační systém, pokud podporuje docker, docker běží na Ubuntu, docker stáhne nejnovější obraz Ubuntu z oficiálního zdroje, můžete si to představit jako otevření Ubuntu virtuálního stroje, a pak ho instalovat krok za krokem, stejně jako výše.

Tato instalace má však významnou nevýhodu: jakmile je kontejner odstraněn, už není žádná práce provedena. Samozřejmě můžete použít docker commit k uložení jako obrazu, aby bylo možné ho znovu použít.

Ale obrázek je obecně velký a pokud sdílíte jen obrázek, ostatní nebudou vědět, co obrázek obsahuje, což není vhodné pro sdílení a opětovné použití.
Intuitivním řešením je napsat skript, který zaznamená celý proces instalace, takže při opětovné instalaci můžete skript spustit. Dockerfile je jeden z takových skriptů, které dokumentují proces vytváření obrazu.
S Dockerfile stačí spustit docker build. Můžete vytvořit obrázek a Dockerfile je textový soubor, který se velmi snadno upravuje.

Teď, když máte WordPress image, stačí jen spustit docker, aby WordPress běžel.

Pokud je to jen WordPress, to stačí. Ale často je potřeba více obrázků k zahájení služby, například nginx, mysql, mail service atd.
Častěji jsou nginx, mysql a smtp všechny obrázky, které pak společně slouží projektu.
Docker-Compose je řešením tohoto problému. Informace o tom, které obrázky váš projekt potřebuje, jak nastavit každý obrázek, které objemy připevnit a podobně, jsou zahrnuty v docker-compose.yml.
Pro spuštění služby stačí docker-compose up a docker-compse stop/down jen docker-compse pro zastavení

Stručně řečeno, Dockerfile zaznamenává proces tvorby jednoho obrazu docker-compse.yml zaznamenává proces výstavby projektu (obvykle více obrazů).

Říkal jste, že některé tutoriály používají dockerfile+docker-compose, protože docker-compose.yml sám o sobě nemá informace o sestavení obrázku, a pokud je obrázek vytažen z docker registru, pak dockerfile není potřeba; Pokud je potřeba vytvořit obraz, musí být poskytnut Dockersoubor.

docker-composeJe to nádoba na orchestraci. Například máte php image, mysql image a nginx image. Pokud neexistuje docker-compose, pak při každém spuštění musíte zadat startovací parametry každého kontejneru, proměnné prostředí, název kontejneru, zadat parametry linku různých kontejnerů a řadu operací, což je dost složité. Po použití docker-composer můžete tyto příkazy zapsat do docker-composer.yml souboru najednou a pokaždé, když spustíte celé prostředí (včetně 3 kontejnerů), stačí zadat příkaz docker-composer up.

DockerfileÚkolem je vytvořit zrcadlový obraz od nuly. Obsahuje prostředí, programový kód atd. potřebné pro instalaci a provoz. Tento proces tvorby probíhá pomocí dockersouboru. Dockerfile – Připraven pro docker build příkaz pro vytvoření samostatného obrazu, který lze také použít v docker-compose pro živé sestavování
docker-compose.yml - Skript pro docker-compose, který dokáže spravovat více kontejnerů současně, včetně vztahů mezi nimi, zda je to pro vytvoření s oficiálním obrázkem nebo sám, různé definice síťových portů, definice úložného prostoru atd




Předchozí:Nepodařilo se zaregistrovat URL "http://xx/" pro "NÁZEV STRÁNKY"...
Další:Docker ukládá umístění obrazu pod systémem Windows
 Pronajímatel| Zveřejněno 18.12.2022 14:56:50 |
Centos installation Docker Compose tutorial
https://www.itsvse.com/thread-5164-1-1.html
 Pronajímatel| Zveřejněno 05.03.2025 10:37:33 |
BuildKit je vylepšený backend, který nahrazuje legacy builder. Od verze 23.0 je BuildKit výchozím builderem pro uživatele na Docker Desktop a Docker Engine.

Přihlášení k hypertextovému odkazu je viditelné.
Přihlášení k hypertextovému odkazu je viditelné.
Přihlášení k hypertextovému odkazu je viditelné.

Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com