Vlastnosti zväzkov Docker
- Zdieľanie objemových údajov a úložiska medzi viacerými kontajnermi a hostiteľskými súborovými systémami.
- Oddelenie nádob od skladu.
- Pri odstraňovaní kontajnera nevymaže obsiahnuté údaje.
- Ľahko zálohujte, obnovujte a migrujte údaje.
V tomto návode vysvetlíme, čo je zväzok Docker a ako ho používať, ako aj spôsob pripojenia zväzku v Dockri.
Požiadavky
- Systém so systémom Linux s nainštalovaným programom Docker.
- Je nakonfigurované heslo root.
Základná syntax zväzku Docker
Príkaz „docker volume“ môžete použiť na zobrazenie všetkých dostupných možností s objemom:
zväzok ukotveniaPo zadaní vyššie uvedeného príkazu by sa mal zobraziť nasledujúci výstup:
Použitie: docker volume COMMANDSpravujte zväzky
Príkazy:
vytvoriť Vytvoriť zväzok
skontrolovať Zobraziť podrobné informácie o jednom alebo viacerých zväzkoch
Je zoznam zväzkov
orezať Odstráňte všetky nepoužívané miestne zväzky
rm Odstráňte jeden alebo viac zväzkov
Spustením príkazu „docker volume COMMAND --help“ získate ďalšie informácie.
Vytvorte zväzok
Ak chcete vytvoriť dátový zväzok, najskôr budete musieť vytvoriť dátový zväzok na hostiteľovi Docker a pripojiť ho ku kontajneru.
Zväzok Docker môžete vytvoriť pomocou príkazu „docker volume create.„Napríklad pomocou nasledujúceho príkazu vytvoríme nový zväzok Docker s názvom myvolume:
ukotviteľný zväzok vytvoriť môj objemMali by ste vidieť nasledujúci výstup:
môj objemSvoj existujúci zväzok môžete zobraziť pomocou nasledujúceho príkazu:
docker volume lsMali by ste vidieť nasledujúci výstup:
NÁZOV OBJEMU VODIČAmiestny c2d2815ba1a75fbfe5d0a4b69d94269e55ccbc138c7d2e19504e501f1dbe634f
miestny objem
Ak chcete zobraziť viac informácií o zväzku, spustite nasledujúci príkaz:
ukotviteľný panel skontrolovať môj objemPo vykonaní vyššie uvedeného príkazu by ste mali dostať nasledujúci výstup:
["CreatedAt": "2020-09-12T04: 51: 31Z",
"Driver": "local",
„Menovky“: ,
"Mountpoint": "/ var / lib / docker / volumes / myvolume / _data",
"Name": "myvolume",
"Možnosti": ,
"Scope": "local"
]
Pripojte zväzok
V tomto okamihu máte jeden zväzok s názvom myvolume. V tomto príklade vytvoríte kontajner a pripojíte k nemu myvolume.
Na pripojenie zväzku môžete použiť voľbu -mount. Základná syntax na pripojenie zväzku k kontajneru je uvedená nižšie:
docker run --mount zdroj = názov zväzku, cieľ = cesta-vnútri-kontajnera obrázky dokuNapríklad na vytvorenie kontajnera Ubuntu a pripojenie myvolume ku kontajneru spustite nasledujúci príkaz:
docker run -it --name = volumecontainer --mount source = myvolume, destination = / data ubuntuTento príkaz vytiahne obraz Ubuntu z Docker Hubu, spustí kontajner v interaktívnom režime s názvom volumecontainer a pripojí kontajner myvolume k priečinku / data v adresári / data:
Lokálne nie je možné nájsť obrázok „ubuntu: latest“najnovšie: Vytiahnutie z knižnice / ubuntu
54ee1f796a1e: Potiahnutie dokončené
f7bfea53ad12: Potiahnutie dokončené
46d371e02073: Potiahnutie dokončené
b66c17bbf772: Potiahnutie dokončené
Digest: sha256: 31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Stav: Stiahnutý novší obrázok pre ubuntu: najnovší
root @ 06a477c4e444: / #
Pripojený zväzok môžete skontrolovať pomocou nasledujúceho príkazu:
[chránené e-mailom]: / # lsDátový adresár by ste mali vidieť v nasledujúcom výstupe:
bin boot data dev atd home lib lib32 lib64 libx32 media mntopt proc root spusti sbin srv sys tmp usr var
Teraz vytvoríme vzorový súbor s názvom file.txt inside / data directory s nasledujúcim príkazom:
"Toto je testovací súbor!"> / údaje / súbor.TXTZ kontajnera vystúpite nasledujúcim príkazom:
východRovnakým kontajnerom znova spustite nasledujúci príkaz:
docker kontajner na spustenie objemuĎalej pripojte bežiaci kontajner pomocou nasledujúceho príkazu:
docker exec -it volumecontainer / bin / bashSkontrolujte, či je váš súbor v poriadku.txt je trvalý s nasledujúcim:
mačací údaj / súbor.TXTPo zadaní vyššie uvedeného príkazu by ste mali dostať nasledujúci výstup:
Toto je testovací súbor!
Zdieľajte údaje medzi kontajnermi
Pomocou zväzku Docker môžete tiež zdieľať údaje medzi viacerými kontajnermi.
Ako viete, pomocou tohto zväzku sme vytvorili zväzok s názvom myvolume nový kontajner s názvom volumecontainer. Vytvorili sme tiež súbor s názvom súbor.txt vo vnútri zväzku.
Teraz pomocou nasledujúceho príkazu vytvoríme ďalší kontajner s názvom volumecontainer1 s rovnakým objemom myvolume:
docker run -it --name = volumecontainer1 --mount source = myvolume, destination = / data ubuntuSpustite príkaz ls, ako je to zobrazené nižšie:
jeDátový adresár by ste mali vidieť v nasledujúcom výstupe:
bin boot data dev atd domov lib lib32 lib64 libx32media mnt opt proc root run sbin srv sys tmp usr var
Spustením nasledujúceho príkazu skontrolujte súbor.TXT:
mačka / dáta / súbor.TXTMali by ste vidieť rovnaký obsah, ktorý ste vytvorili v predchádzajúcom kontajneri:
Toto je testovací súbor!
Pripojiť adresár ako zväzok
Adresár umiestnený vo vašom hostiteľskom systéme Docker môžete použiť ako zväzok a pripojiť ho ku kontajneru. Môžete tiež použiť voľbu -v, aby ste dosiahli to isté, ako je uvedené nižšie:
docker run -v "názov_adresára": názov zväzku docker_imageVytvorte adresár s názvom / data vo vnútri hostiteľa Dockeru pomocou nasledujúceho príkazu:
mkdir / ÚdajeĎalej vytvorte niektoré súbory v adresári / Data:
cd / dátadotykový súbor1.súbor txt2.súbor txt3.TXT
Vytvorte nový kontajner pomocou adresára / Data ako zväzku pomocou nasledujúceho príkazu:
docker run -it --name = data1 -v / Data: / Data ubuntuTento príkaz vytvorí nový kontajner a pripojí zväzok s názvom / Data.
Spustením nasledujúceho príkazu skontrolujte obsah adresára / Data:
ls -l / Údaje /Mali by ste vidieť všetky súbory, ktoré sme predtým vytvorili v hostiteľskom systéme, ako je uvedené nižšie:
spolu 0-rw-r - r-- 1 root root 0 Sep 12 05:41 file1.TXT
-rw-r - r-- 1 root root 0 Sep 12 05:41 file2.TXT
-rw-r - r-- 1 root root 0 Sep 12 05:41 file3.TXT
Odstráňte zväzok Docker
Zväzok môžete ľahko odstrániť alebo odstrániť pomocou nasledujúcej syntaxe:
docker volume rm volume-nameNapríklad na odstránenie zväzku s názvom myvolume spustite nasledujúci príkaz:
docker volume rm myvolumeMala by sa zobraziť nasledujúca chyba:
Chybná odpoveď od démona: remove myvolume:objem sa používa - [06a477c4e4444c0f815a1ec4a151a8
339bf53d5060c492af867bcaebe531dd5d, fd8d05a027a755f
1df004ccf62568b5d66989c2112115c8a652ddbc8eb960948]
Je to tak preto, lebo váš objem využíva kontajner. Pred odstránením objemu budete musieť nádobu zastaviť a odstrániť.
Ak chcete kontajner zastaviť a odstrániť, spustite nasledujúci príkaz:
docker kontajner zastaviť volumecontainer volumecontainer1docker kontajner rm volumecontainer volumecontainer1
Teraz môžete ľahko odstrániť hlasitosť.
Záver
Vo vyššie uvedenom sprievodcovi ste sa naučili, čo je zväzok Docker, ako ho vytvoriť a ako ho pripevniť do kontajnera. Naučili ste sa tiež, ako pomocou zväzku zdieľať údaje medzi viacerými kontajnermi.