Zharoznizhuvalny gyermekek számára elismert gyermekorvos. Állítólag vannak olyan helyzetek, amikor veszély esetén észrevétlen segítséget nyújtanak, ha a gyermek ártatlanul adakozásra szorul. Todi apa felvállalja a lázcsillapító gyógyszerek sokoldalúságát és székrekedését. Hogyan adhatsz mellet a gyerekeknek? Hogyan lehet legyőzni a nagyobb gyerekek hőmérsékletét? Melyek a legjobbak?
A Docker nagyon népszerű eszköz, mivel minden konténerre szükség van a program futtatásához. Vikoristovuyuchi Docker-konténerek, akkor kezdje el játszani a tényt, hogy a program ugyanaz minden gépen, amelyen fut.
Tekintse meg a tárolók és a Docker-képfájlok összekapcsolását, valamint a tárolók telepítését, elindítását, frissítését és megtekintését.
Nézz körül
Docker képÉrvényes sablonként lehet fizetni, mely a konténerek zárására használható. A képeket a gyökér fájlrendszerből hívják meg javításra, amelyhez golyókkal lehet eljutni a csúcsra apró változtatások ugyanazok a paraméterek induláskor. Minden tipikus Linux-disztribúció esetén a Docker csak azokat a részeket kéri, amelyek a programok futtatásához szükségesek. A képeknek nincs állapota és a bűz nem változik. Helyesen mondjuk, a bűz a kiindulópont, a Docker konténerek gerince.
A képek pillanatnyilag "életre kelnek", ha beírod a docker run parancsot, azonnal megnyitom a konténert, aminek eredményeként egy új sor került a kép fölé olvasásra és írásra. A csak olvasásra szolgáló leolvasások kombinációja (amelynek tetejére az olvasáshoz és a lejegyzéshez hozzáadódnak az értékek) UnionFS-ként is elérhető - fájlrendszer, scho zdіysnyuє fájlrendszerek kaszkád-ob'dnane csatlakoztatása. Ha egy futó konténer fájlját beírjuk a futó fájlba, akár változásról van szó, a fájl a területről másolódik, nem szükséges olvasni az íráshoz és olvasáshoz, lefagyasztani. І most egy cob fájl prikhodkovyu változata rіvnem leírni, hogy olvasmány, ale vіn nem látomások. Az írási és olvasási háttér néhány változását el kell távolítani a környező tároló közepéről. Ha meglátják a tárolóedényt, az összes kígyó is elpusztulhat (mivel a bűzt sem kímélik).
Robot konténerekkel
Shhorazu, ha a docker run parancsot használja, a látott képből egy új tároló nyílik meg. Több konkrét csikk lejjebb lesz látható.
Croc 1: két konténer szár
Az alábbi docker run parancs egy új tárolóra van írva, amely a vicorist alapja, ami az Ubuntu képfájl. A -t kulcs egy terminált ad, a -i pedig a vele való interakció képességét. A tároló közepéhez való csatlakozáshoz használhatja a szabványos bash parancsot. Tobto vi meg tudja mondani:
$ docker run -ti ubuntu
$ docker run -i -t ubuntu: 14.04 / bin / bash
(egy másikhoz futtassa a / bin / bash parancsot a tároló közepén, és automatikusan a tároló közepére lépjen)
A parancssor megerősíti, hogy Ön a közepén a konténer jak superkoristuvach. A @ jelnél módosítsa a tárolóazonosítót, és ehhez módosítsa:
Most győztesen az echo paranccsal módosítsa a rendezőt / tmp, majd módosítsa a további cat parancshoz rögzített változtatásokat:
Echo "Example1"> /tmp/Példa1.txt cat /tmp/Példa1.txt
A bűntudat képernyőjén:
Most menj a konténerből:
Amint Bula Viconan csapata kimentünk a parancssorból, a Docker konténer leállt. Legyőzheti a tse vi-t, mivel a vikoristov a docker ps parancsot használja:
A futó konténerek közepette ne üsd meg azt, amelyik helyettesíti:
TÉRÉS ID KÉP PARANCS LÉTREHOZOTT ÁLLAPOT PORTNEVEI
Azonban hozzáadhatja az -a billentyűt, hogy az összes konténert megütögesse - mivel azok működnek, így hozzáadhatja azt a tárolót, amelyben korábban ezt tette:
$ docker ps -a TÉRÉS ID KÉP PARANCS LÉTREHOZOTT ÁLLAPOT PORTNEVEK 11cc47339ee1 ubuntu "/ bin / bash" 9 qilin ezelőtt Kilépve (127) 10 másodperce
Ha a tárolót megnyitják, az új azonosító automatikusan generált nevet kap. Ebben a vipadban a 11cc47339ee1 a tároló azonosító száma (ID), a small_sinoussi pedig a generált név. A ps -a parancs megjeleníti az adatokat, valamint a tárolókonténer képét (az adott ubuntu verzióban), ha a tárolókonténer (9 perc a kötetig), és a parancs az újban elindult (" / bin / bash"). Csodálkozhatsz is a konténer állapotán (10 másodperce ment el), ha készen van a konténer, egy órán keresztül például a "Fel" állapotot látod, még működik.
Most megadhatja a parancsot a tároló ismételt leállításához:
$ docker run -ti ubuntu
Azok számára, akik ugyanúgy figyelik a csapatot, mint legutóbb, nyisson ki egy teljesen új konténert - nyerje meg Matim azonosító számát, és ha megpróbál rácsodálkozni a Példa1 fájlban, amit korábban nem ismert, akkor olvassa el.
[e-mail védett]: / # cat / tmp / Példa1
Visnovok:
Cat: / tmp / Példa1: Nincs ilyen fájl a könyvtárban
Tudod építeni, hogy az adatok ismerték, ale jobbra, zychayno, egyáltalán nem. Lépjen ki egy másik tárolóból, görgessen át, és megsérti a tárolót (beleértve az elsőt is a szükséges fájlból), lépjen a rendszerbe.
[e-mail védett]: / # kilépés a $ dockerből ps -a
Visnovok:
TÉRÉSazonosító KÉP Parancs LÉTREHOZOTT ÁLLAPOT PORTNEVEK 6e4341887b69 ubuntu "/ bin / bash" Kickass (1) 6 másodperce kickass_borg 11cc47339ee1 1/2
Croc 2: az első tároló újraindítása
Ugyanazon tároló újraindításához szükség van a start parancsra, két -ai billentyűt kell használni. Meg kell írnod a konténer azonosító számát, amit szeretnél, különben megnevezem. Az eredmények és a csapat így fog kinézni:
Docker start -ai 11cc47339ee1
Most ismét futtasd a shell bash-t a konténer közepén, és módosíthatod a fájlt, amit a statisztika csutkáján láttál, még mindig itt található:
Cat /tmp/Example1.txt
Nézd meg a képernyőn:
Most már mehet a konténerből:
Ilyen módon meg kell változtatnia a tartály közepét, újra és újra mozgatnia kell a tartályt. Lehetséges újra látni, ha magát a tartályt látja. Lehetőség van a fenékrész csökkentésére is, így egy okremogo konténer (és nem az összes konténer egyszerre) felszerelhető.
Croc 3: mindkét konténer nézete
Az utolsó horgolás két konténer megjelenése lesz, ahogy kinyitották a kollekció megtekintéséhez. A dokkoló rm. A tartályoktól azonban nem szabadulsz meg. A parancs elküldése esetén azonosító szám megadása szükséges, vagy megnevezek egy vagy néhány konténert. Például a konténerek, ajtók korábbi megtekintéséhez el kell küldenie a parancsot:
Docker rm 6e4341887b69 small_sinoussi
Tartsa a képernyőn:
6e4341887b69 small_sinoussi
Most látszott a konténer sértése.
Visnovok
Láttad az információkat alapvető parancsok A Docker robotjainál azért jöttem, hogy megnézzem a konténereket, indítsam el, és tudom, hogyan kell elindítani és megnézni a konténereket.
Nem egyszer turkáltunk a témák között, és tehetetlen rendszereket néztünk meg, hogy ösztönözzük őket. Világszerte tudjuk, hogy egyetlen csodálatos rendszerből, Docker konténerekkel.
Valamiért az alapvető funkcionalitást ismertetjük, amely a ciklus következő szakaszában lesz, és röviden a Docker architektúráról. Docker vikoristovuє kliens-szerver architektúra, amely a kliensből van tárolva - Docker segédprogramok, hogyan fordulhat a szerverhez segítségért RESTful API, ez a démon a Linux operációs rendszerben (div. 1. ábra). Ha azt akarom, hogy a Docker megfelelően működjön a Linux operációs rendszer nézetén, a statisztikák nem fognak büdösnek tűnni.
A Docker fő összetevői:
- Containeri- Elszigetelt az operációs rendszer további technológiájához és a coristuvatski otochennyhez, amelyben a programok megjelennek. Könnyű értéket adni a Docker-tárolónak, mivel az a kiegészítő képből fut. A beszéd előtt maga ideologikus és ismerős a Docker használata, például az LXC-ből ( Linux konténerek), azt akarom, hogy a Linux kernel egyik technológiájának gonoszság bűze legyen. A Docker projekt fejlesztői a következő elvet követik: egy konténer - egy program.
- Képek- csak programsablonok olvasásához érhető el. A meglévő képek mellé újakat is hozzáadhat, például spirálisan létrehozhatja a fájlrendszert, módosíthatja vagy hozzáadhat további képeket az előlap elé. Hívjon új képet, vagy a már futó konténer mentésének segítségére egy új képet a meglévő fölé, vagy további speciális használati utasításokért. A kisméretű konténerek egyenlő fájlrendszeren való elosztásához vikoristovuvati AUFS, btrfs, vfs és Device Mapper... Hogyan lehet átvinni a Docker szerver spilójába SELinux akkor kötelező Eszközleképező.
- Iktató hivatal, hogyan álljunk bosszút a tárolókon ( adattár) képek, - képek sündisznói. Lehetsz privát és elérhető is. Nayvidomishim.
A GNU/Linux operációs rendszerek konténereinek elkülönítéséhez használjon szabványos Linux kerneltechnológiákat, például:
- Space imene ( Linux névterek).
- Kontroll csoportok ( Ccsoportok).
- Segítsen kezelni jogosultságait ( Linux képességek).
- Dodatkovi, kötelező rendszerek és biztonság, szóval jak AppArmor vagy SELinux.
A jelentés technológiájának egyértelmű fordítása.
A kontrollcsoportok mechanizmusa (Ccsoportok) A Nada egy eszköz a rendszererőforrások elosztásának, priorizálásának és kezelésének pontos szabályozására. A vezérlőcsoportokat a Linux kernelben implementálták. A jelenlegi disztribúciók esetében a vezérlőcsoport-kezelés a következőn keresztül valósul meg systemd, azonban igénybe veheti a könyvtár segítségét libcgroup hogy a közművek cgconfig... A fő vezérlőcsoportokat (más néven vezérlőket) az alábbiakban mutatjuk be:
- blkio- a blokkmellékletekhez való hozzáférés korlátainak meghatározása az enter-vivod műveletre;
- processzor- Vikoristovuchi folyamattervező, dolgozók közötti körmenet kialakítása;
- cpuacct- a központi processzor erőforrásai automatikus csatlakozásának megnyitása. Pratsyu spіlno a vezérlővel processzorírja le a zsigét;
- cpuset- zakrіplyuє az énekprocesszor munkatársai mögött és az egyetem emléke;
- eszközöket- Szabályozom az épület bejutását az énekes melléképületekhez;
- mélyhűtő- Zupinyak vagy megújított támogatás;
- memória- Határt és generátort állítok fel a kontrollcsoport dolgozóinak győzelmes emlékére;
- net_cls- Zdіysnyu teguvannya hálós csomagok osztály azonosító ( osztály azonosító). A forgalomirányító engedélyezése ( tc parancsot) és a tűzfal ( iptables) vrahovuvati ci címkék pid óra feldolgozási forgalom;
- perf_event- lehetővé teszi a kontrollcsoportok felügyeletét további segédprogramok számára perf;
- hugetlb- Lehetővé teszi, hogy a győztesek lássák a memória virtuális oldalát nagyszerű méret hogy zastosovuvati előttük lіmiti.
A név tere, a sajátjukkal nem az erőforrások elosztását, hanem az adott kernel struktúráihoz való hozzáférést irányítják. Valójában a folyamatok elkülönülését jelenti az egytől és az anyák párhuzamos lehetőségét "ugyanaz", de nem a folyamatok hierarchiáié, a corystuvachié és a díszes interfészeké, de nem fonja össze az egyet. A jó szolgák bazhanya számára az anyák megtalálhatják saját hatalmukat loopback-interfész.
Adjon hozzá sok nevet, például a Dockert:
- PID, folyamatazonosító- A folyamatok elkülönítése.
- NET, hálózat- A szegélyvonal interfészek leválasztása.
- PC, InterProcess kommunikáció- A folyamatok közötti interakció menedzselése.
- MNT, Mount- Telepítési pontok kezelése.
- UTS, Unix Timesharing System- A mag és az azonosítók izolálása a verzióban.
Mechanizmus név szerint Képességek lehetővé téve a kiváltságos koristuvach gyökér megverését a kiváltságok kis csoportjaira és az okremo jeleire. Úgy tűnik, hogy a GNU / Linux teljes funkcionalitása javítva van a verzióból kernelek 2.2. A konténerek gyűjteménye egy sor jogosultsággal együtt elindul.
A docker parancs további opciója esetén engedélyezheti ezt a kerítést:
- a telepítés működése;
- hozzáférés az aljzatokhoz;
- vikonannya része a műveletnek a fájlrendszerből, például módosítsa a vlasnik fájljainak attribútumait.
Többet megtudhat az emberoldali segítség mögött meghúzódó kiváltságokról KÉPESSÉGEK (7).
Docker telepítése
Docker telepítve a CentOS alkalmazásra. A CentOS-es robotokkal є vibir: vikoristovuvati eltartom tőled a verziót pstream A CentOS projekt által a Red Hat kiegészítők közül kiválasztott verzióhoz. Az oldalon elérhető változtatások leírása.
A portot többnyire az upstream újabb verzióira irányítják át, és a Red Hat kiskereskedők által javasolt snaps még nem került be a fő kódba. A statisztika írásakor a docker szolgáltatások legújabb verziói három részből állnak: démon dokkoló, konténeres és runc... A Red Hat még nem számít, de a változás stabil, és a monolitikus fájl 1.10-es verziója is rendelkezésre áll.
Leraktár beállítása a telepítéshez upstream-verziók, mint a іnіh elosztókészletekben és operációs rendszerben található instalyatsії utasítások, amelyek a telepítő telepítőjének irányulnak a hivatalos oldalon. Zokrema, beállítva a CentOS 7 adattárhoz:
# cat /etc/yum.repos.d/docker.repo name = Docker Repository baseurl = https: //yum.dockerproject.org/repo/main/centos/7 engedélyezve = 1 gpgcheck = 1 gpgkey = https: // yum .dockerproject.org / gpg
# cat /etc/yum.repos.d/docker.repo név = Repository baseurl = https://yum.dockerproject.org/repo/main/centos/7 engedélyezve = 1 gpgcheck = 1 gpgkey = https://yum.dockerproject.org/gpg |
Telepítse az indításhoz szükséges csomagokat, és tartalmazza a szolgáltatást:
# yum install -y docker-engine # systemctl start docker.service # systemctl enable docker.service
# yum install -y docker-motor # systemctl start docker.service # systemctl enable docker.service |
A szolgáltatás állapota megfordult:
# systemctl status docker.service
# systemctl status docker.service |
Csodálkozhatsz is rendszer információ Dockerről, hogy otochennya:
# dokkoló információ |
Ha hasonló parancsot futtat, a Docker telepítése után a CentOS-tárolókból adjon hozzá némi betekintést a szoftverbiztonság régebbi verziójába. Visnovka dokkoló információ tudjuk, hogyan yak sofőr a zberigannya danykh vikoristovu Készülékleképező, és jak skhovische - fájl y / var / lib / docker /:
# ls -lh / var / lib / docker / devicemapper / devicemapper / data -rw -------. 1 gyökér gyökér 100G mell 27 12:00 / var / lib / docker / devicemapper / devicemapper / data
# ls -lh / var / lib / docker / devicemapper / devicemapper / data Rw - - - -. 1 root root 100G december 27. 12:00 / var / lib / / devicemapper / devicemapper / data |
Lehetőség a démon elindítására, például az ébresztés a CentOS-ben, lépjen be / etc / sysconfig /... Problémám van a docker fájllal. Egy sor / etc / sysconfig / docker, leírom a lehetőségeket:
OPCIÓK = "- selinux-enabled --log-driver = naplózott"
Yakby vi elindította a docker parancsot, nem használunk root vagy nem használunk docker parancsot, ezért jelentkezzen be a docker csoport előtt, elnézést kérünk:
$ docker keresés mysql
$ keresés mysql-ben |
Figyelmeztetés: nem sikerült lekérni az alapértelmezett beállításjegyzék-végpontot a démontól (Nem lehet csatlakozni a Docker-démonhoz. A docker-démon fut ezen a gazdagépen?). A rendszer alapértelmezett használata: https: // index. docker.io/v1/
Nem lehet csatlakozni a Docker démonhoz. A docker démon fut ezen a gazdagépen?
Szörnyű tisztelet, hogy a koristuvach tényleges bekapcsolása a docker csoport számára erősebb, mint a koristuvach bekapcsolása a gyökércsoport számára.
Az RHEL/CentOS-szállítók nagyon alacsony szintű támogatást nyújtanak a Docker-démonhoz, maguk a Docker-szállítók nem. A Red Hat forrásról Dan Walsh, az RHEL disztribúciós csomagja ír egy jelentést.
Ha „normál” Docker-viselkedést szeretne telepíteni a CentOS-tárolókból (a hivatalos dokumentációban leírandó), engedélyeznie kell a dockercsoportot, és hozzá kell adnia a démon indításának lehetőségét:
OPCIÓK = "- selinux-engedélyezett --log-driver = naplózott ↵ --group = dokkoló"
OPCIÓK = "--selinux-enabled --log-driver = naplózott ↵ --group = dokkoló" |
A szolgáltatás újraindításakor és felülbírálásakor a docker socket fájlt a docker csoporthoz kell hozzárendelni, nem a root csoporthoz:
# ls -l /var/run/docker.sock |
Push képeket és Docker-címkéket
Próbáljon meg ismerni egy tárolót a Docker Hubon.
$ docker kereső haproxy
$ keresés haproxy |
Nyertünk egy listát számos HA Proxy képből. A lista keresési eleme a HA Proxy ára a hivatalos adattárból. Az ilyen képeket a tim látja, de a néma szimbólum nevében «/» , amely a tároló tárolójának forrása a tároló nevéből. A fenéknél, a hivatalos mögött, két haproxy kép látható a koristuvachiv kritikus adattáraiból eeacms ta millió12.
A képeket (legfeljebb két alsót) saját maga telepítheti, ha regisztrál a Docker Hubon. A tisztviselőket a Docker, Inc. által szponzorált dedikált csapat támogatja. A hivatalos adattár jellemzői:
- Az árak vikorystannya képekre ajánlottak, a legjobb ajánlások és gyakorlatok urahuvannyajából fakadnak.
- Szagoljon є alapvető képeket, amelyek referenciaponttá válhatnak a finomabb beállításhoz. Például az Ubuntu, a CentOS vagy a könyvtár és köztes szoftver alapképei.
- Bosszú az utolsó verzió szoftverbiztonság usuned urazliv_styu segítségével.
- A termékek forgalmazásának hivatalos csatornája. Shukati shukati megfosztja a hivatalos képet, gyorsan választhat -szűrő "hivatalos = igaz" parancs dokkoló keresés.
A vivedenna parancs csillagainak száma dokkoló keresés a kép népszerűsége szerint. A gomb analógja Mint a közösségi peremeken vagy az elsők könyvjelzőinél. Automatizált azt jelenti, hogy a kép automatikusan begyűjtésre kerül egy speciális szkriptből a Docker Hub segítségével. Nevezze el a következő képeket, amelyek automatikusan a megjelenített fájl ismeretében konvertálható után kerülnek fel.
A HA Proxy hivatalos képe:
$ docker pull haproxy Vikoristannya részletes címke: legújabb
A képen kívül így nézhet ki:
[im'ya koristuvach] im'ya kép [: tag]
A paranccsal megtekintheti a kötött képek listáját docker képek:
Konténer elindítása
Egy tároló elindításához nem szükséges kép hozzáadása az elejétől. Ha elérhető, a rendszer automatikusan blokkolja. Próbáljunk meg elindítani egy konténert az Ubuntuban. Nem adjuk hozzá az adattárakat, de a Canonical által készített hivatalos kép többi része letiltásra kerül.
$ docker run -it ubuntu [e-mail védett]:/#
$ futni - ez ubuntu root @ d7402d1f7c54: / # |
Okrim parancs fuss, két lehetőséget kínáltunk: -én- a konténer interaktív módban indult el -t- pszeudo-termiát látunk. A jak felülről látható, a konténer a gyökér tulajdonosa, a konténer azonosítója pedig megjelenik a konténernél. Előfordulhat, hogy a fennmaradó rész nem minden konténer esetében méltányos, és a konténer elosztódobozában kell letenni. Fordítva, jól csinálta az Ubuntu:
[e-mail védett]: / # macska / etc / * kiadás | grep DISTRIB_DESCRIPTION DISTRIB_DESCRIPTION = "Ubuntu 16.04.1 LTS"
root @ d7402d1f7c54: / # macska / etc / * kiadás | grep DISTRIB_DESCRIPTION DISTRIB_DESCRIPTION = "Ubuntu 16.04.1 LTS" |
Uname parancs -a ilyen célokra nem fogja látni a tároló töredékeit a gazdagép maggal.
Egy opciós jakkal egyedi konténer beállítható, jakon pedig jakhoz illeszthető, krim ID tároló. Csodajak -név<имя>. Ha az opciót kihagyjuk, az automatikusan generálódik.
Az automatikusan generált konténerváltás nem hordoz üzenetet a hozzárendelésről, emiatt biztos lehet benne, hogy a név az anyakönyvvezető hivatalos rangja és a látszólagos személy neve, a borász vagy a hacker. A bőr generátor kódját meg lehet tudni Rövid leírás annak, aki vіdomy tsey dіach.
A futó konténerek listáját a paranccsal tekintheti meg. A legkülönfélébb indikációkhoz egy másik kifejezés:
A mysql képből bezárt konténer parancsának elküldése viszont nem látható. Skoristaєmosya optsієyu -a Ez az összes tárolót megjeleníti, nem csak a futókat:
Nyilvánvaló, hogy a tároló elindítása előtt nem adtak meg kötési paramétereket. Tekintse meg a konténer futtatásához szükséges középút leírását, a hivatalos MySQL image-t a Docker Hubon találja meg. Ismételje meg egy próbálkozással, vikoristovuyu opts_yu -e a tárolók módosításának beállítása:
$ docker futtatása --name mysql-test ↵ -e MYSQL_ROOT_PASSWORD = docker -d mysql
Paraméter є parancsként marad, ahogy szeretném a konténer közepén látni. A parancsértelmező egy pillanat alatt látható Bash... Lehetőségek -azt hasonlóan a csapat által korábban odaítéltekhez dokkolófuttatás.
Valójában a parancsnoki központ elindításához a konténerben mysql-tesztújabb folyamat hozzáadása - bash... Segítségért becsaphatja a pstree parancsot. A visnovok sebessége a parancshoz docker végrehajtó:
Middle Docker és Linuxén, kísérletileg, FreeBSD. Natívan fut Linuxon és kísérletileg FreeBSD-n. Pid MacOSX, Windows - virtuális gépen keresztül. A Docker az elszigeteltség egy részhalmaza. A Docker konténer közepén fekvő helyzet elkülönítése operációs rendszer Ez az operációs rendszer elszigeteltsége, mivel Ön a Docker közepén fekszik. Az összes fájl, port, prioritás átvitelének elkülönítése. Є is értik a "perzselő hőséget". Be-yake PZ, hogyan csatlakozz a számítógéphez, durván hátrahagyva(Konfigurálható fájlok, eszköznek nevezett statikus fájlok, további segédprogramok/szolgáltatások, könyvtárak stb.). Számos cich bibliotecs / utilit / szolgáltatás őrült egy az egyért.És a tény sürgőssége miatt, hogy a cich bibliotek / utilit / szolgáltatások bőre nem olyan rossz - a helyzet szar. Például a Yandex.Cocaine-t használom normál fordításhoz csak Ubuntu 14.04-en (і, nachebto, Debian 7-en). Nem CentOS 6, 7, Debian 8, FreeBSD 9, 10, Ubuntu 15, 16 és ін. rosszul összeállítja... A Docker összes operációs rendszerében elindítható. Oldalról, és a tsimtől egy órára meg kell szerezni az egyiket, minél nagyobb, annál jobb a PZ. órával idősebb vagyok. Ráadásul a Linux verziójáról nem lehet tudni, de komoly látni. Például egy PZ vimag nem kevesebb, mint az Ubuntu 14.10, és nem több, mint a Linux 14.04. Docker - tse egy program az egyben egyéni beállításhoz az operációs rendszer egyedi verziójából. Egy rakhunok leveles konténerért, ha vikorisztoválsz egy gyökeret minden rangnak, akkor a Docker konténer mérete több cylobyte-ra esik, nagyobb méretben, mint a bináris fájl, futtassa a Dockert. Ebben a rangban van egy bináris fájl, amely saját operációs rendszerén bi-ként indítható. Mondhatni - ba, ez már régóta látható Virtuális gép. Nos, ez nem így van.Úgynevezett konténerek. Ott nincs virtuális gép szaga. A Windows és a MacOSX hibáztatásáért Egy virtuális gép nélküli robotnál kísérletileg lehetséges csak elhagyni, de az operációs rendszerben a norma a Docker győztes gépe. A Docker Ale virtuális gépei csak terjesztésre szolgálnak. Nem kell aggódnia egy virtuális gép éles üzembe helyezéséhez a Dockerből. Docker vikoristovuyu konténer az operációs rendszerhez. LXC Linuxra, Jails FreeBSD-re. A tároló az operációs rendszer teljes területe, elkülönítve az operációs rendszer fő részétől. A tárolónak saját könyvtárfája (beleértve a rendszert / dev, / bin, / sbin stb.), saját portjai és portjai vannak. Ale egyáltalán, ne vikoristovuєtsya povna virtualizáció. Scho sutta az erőforrások megtakarítása érdekében. Indítson el 100 önálló virtuális gépet Nem valószínű, hogy megtalálja egy kemény szerveren. És attól fuss 100 Docker konténert gyenge otthoni számítógép- tudsz. Valójában a győztes rendszer nem egy közös virtualizáció a győztes operációs rendszerek között a konténerek közepén. Jak általában tse a Linux és a FreeBSD speciálisan elkészített verziója... A legkülönlegesebb felkészülés. Windows - nehéz tárolóban futtatni. A konténereket Dockerbe tolták. Docker, szigorúan úgy tűnik, nem is rosszabb Zruchny szerszámkészlet együttesen a konténervirtualizáció kezeléséhez. Ale még több. Miért legyek győztes? A nagy teljesítményű Dropbox, a Facebook és az óriáscégek, amelyek egyenként 1 millió új programot indítanak el szolgáltatásaikon, terhelés érte, így oktalanul kihagyja az operációs rendszer azonos beállításának garanciáit.És a tse kritikus. Azelőtt Ideálisan megírva és valódi szerveren tesztelve. Ehhez a legokosabb legények közül egy új koncepciót vezettek be - egy saját fejlesztésű skin-programot a szervereken, amelyek saját fejlesztésűek, az operációs rendszer egyedi beállításaival. Több ennél - szoftver-viszonteladók gyűjteménye tesztprogram Docker konténerekben, énekelve nalashtuvanny. І egészben (és ilyen beállítással) a program Docker konténerei a szerverre mennek. Tse lehetővé teszi a kezesek számára, hogy növeljék a piac közepe és a lista közepe azonosságát. Addig gyötrődtek az emberek, láttak ravasz szerelőket. Poten spat on spat okuvati otochenya az OS-ben- egyszerre a taka fogalma - telepítse a programokat a szerverre egyszerre a hozzájuk igazított egyedi operációs rendszerekkel- a tartály közepén lenni. 1 konténer = 1 beállított operációs rendszer = 1 program középen. Röviden:
Tse lehetővé nem pratsyuvati a nalashtuvanny "pid szerver" helyben az aljzat gépein. A kiskereskedelmi üzlet gépein a szétszerelés teljesen lehetséges. programokat dolgozzon ki egy óra, yaki vimag az operációs rendszer őrült beállítása... Több garanciát is ad, így a szerveren a program ugyanúgy fut, mint a kereskedő gépein. Lehetővé tesszük a Windows / MacOSX fejlesztését a Linuxon végzett tesztek kézi "behatolásából". A Docker a leállításhoz/beállításhoz ragadt csak kiszolgálószoftver-biztonság Linuxhoz(Kísérleti FreeBSD-n). A Chi nem okostelefonokhoz való. És ami az asztali számítógépeket illeti, akkor csak programozottan biztonságos nincs GUI. Oskіlki Docker lehetővé teszi egy csapásra segíteni a robottermesztőket és adminisztrátorokat, és tanácsot adni az eredményről- egyszerre dübörög a Docker. Fenséges szerszámhegyet találtak ki a dokkolók rúdjainak kezelésére. Korábban is érdemes 10000 szerveren 10000 programot futtatni, minimum 3 jó minőségű devop kell hozzá, ahogy írták vásárlás leírás jak tse zrobiti a Puppet, Salt, Chef, Ansible, hogy aztán nem volt garancia, tse minden tesztelést hónapok alatt végeztek. Ez egy időben a Dockerrel navigálhat egy minősített devop-ban keruvati millió programmal több tízezer szerveren. Nagy garanciával minden normálisan indul. Lehet, hogy az ellenség el van szorítva, de a fejlesztő eljuttatta a tárolót a Dockerhez, majd átadta az adminnak. A fejlesztő megmutatja az összes eredményt a CI rendszerre vonatkozóan (hívás git-en keresztül) Tehát a helyes vágás esetén a kereskedő nem tehet/nem lesz hibás abban, hogy hozzáadja azokat, akik az imázst képviselik. A fő ötlet az, hogy tesztelték, mintha elindítanák egy harci szerveren. Egy az egyhez, beleértve a fájlokat is (Nem úgy, de ugyanaz). Hivatkozás a képek és Docker-tárolók kezelésére szolgáló parancsokhoz. FeltételekKép- komplett statikus felépítés az operációs rendszeren. Tartály- a képalkotás legjobb módja. Docker indítási jogokHa egy Docker-tárolót saját kóddal szeretne futtatni (sudo nélkül), hozzá kell adnia a következő csoporthoz: Sudo usermod -aG docker YOU_USER Docker szolgáltatásDocker Service Management "a: Sudo service docker start | stop | restart | status sudo restart docker # alias KépekAz elérhető képek listája: Docker képek Kezelje a képet (vagy a teljes adattárat) a hivatalos nyilvántartásból (képvázlat): Docker pull ubuntu: 14.04 Nézd meg a képre vonatkozó információkat: Docker megvizsgálja az ubuntut Lásd a képet: A Docker véglegesíti a következőt: CONTAINER_ID IMAGE_NAME ContaineriUwaga!Docker konténer indításakor a szolgáltatások / démonok (például SSH, Supervisor és mások) nem indulnak el automatikusan! Godin vitratikus kylkája vagyok a kegyelemért: " ssh_exchange_identification: read: A kapcsolatot alaphelyzetbe állította a peer", amikor SSH-n keresztül próbált csatlakozni a tárolóhoz. De kiderült, hogy az sshd démon egyáltalán nem indult el. Docker exec CONTAINER_ID bash -c "szolgáltatás ssh indítása" Az összes konténer listája (futás és fekvő): Docker ps -a Lásd a konténer(eke)t: Docker rm CONTAINER_ID CONTAINER_ID Az összes konténer megtekintése: Docker rm $ (docker ps -aq) Hozzon létre és futtasson egy Docker-tárolót az Ubuntu 14.04-en interaktív módban (nyissa meg a tároló shelljét): Docker run -it ubuntu bash docker run [opts] image [parancs] -i Interaktív mód, trimєmo STDIN kijelző -t Lefoglalás / létrehoz egy pszeudo-TTY-t, amely stdin-t és stdout-ot csatol --name ime konténer csere ID-w - munkakönyvtár) - e Telepítés változás a tárolóban -u Koristuvach: a pid yakim csoport vétkes a konténer elindításában -v A fájl beillesztése a tárolóba vagy a gazdagép rendszerkönyvtárába -p Hagyja el a tároló portját (portjait) -<порт хост-системы>:<порт контейнера>(--publish =) --entrypoint Az alapértelmezett parancs cseréje az ENTRYPOINT-ról a Dockerfile-ra jegyzetHa tároló nélkül szeretne megnyitni egy TTY-t, nyomja meg a Ctrl + P + Ctrl + Q billentyűket. Hozzon létre és futtasson Docker-tárolót démon módban az SSH-port használatával: Docker run -itd -p 127.0.0.1:221:22 ubuntu Hozzon létre és indítson el egy tárolót a következő tároló nézetével, amely egy zupinkihez (a jóságért fahéj) van írva: Docker run -i -t --rm ubuntu bash Zupinny-tároló interaktív futtatása: Docker start -i CONTAINER_ID Csatlakozás a démonizált tárolóhoz: Docker csatolja a CONTAINER_ID-t Docker parancsHasználat: docker COMMAND docker démon [--help | ...] dokkoló [--help | -v | --version] Önellátó futási környezet tárolókhoz. Opciók: --config = ~ / .docker A kliens konfigurációs fájljainak helye -D, --debug = false Hibakeresési mód engedélyezése --disable-legacy-registry = false Nem lép kapcsolatba a régebbi nyilvántartásokkal -H, --host = Daemon socket (s ) kattintson a -h elemre, --help = false Nyomtatáshasználat -l, --log-level = info Kattintson a megadott értékre --tls = false TLS használata; a --tlsverify által feltételezett --tlscacert = ~ / .docker / ca.pem Megbízhatósági tanúsítványok, amelyeket csak ez a CA írt alá --tlscert = ~ / .docker / cert.pem A TLS tanúsítványfájl elérési útja --tlskey = ~ / .docker / key.pem A TLS kulcsfájl elérési útja --tlsverify = false TLS használata és távoli ellenőrzés -v, --version = false Verzióinformációk nyomtatása és kilépés Parancsok: csatol Csatolás futó konténer buildhez Kép készítése Dockerfile véglegesítésből Új kép létrehozása innen Container "s changes cp Fájlok/mappák másolása a tároló és a helyi fájlrendszer között létrehozás Új konténer diff létrehozása A tároló módosításainak ellenőrzése" s fájlrendszer eseményei Valós idejű események lekérése a kiszolgálóról exec Futtassa a parancsot a tároló exportálása közben Tároló fájlrendszer exportálása tar archívum előzményei Képképek előzményeinek megjelenítése Képek importálása Importálja a tartalmat a tarballból, hogy hozzon létre egy fájlrendszer képinformációit Megjeleníti a rendszerszintű információkat inspect Alacsony szintű információk visszaadása a tárolóról vagy a kép leállításáról Egy futó tároló megölése l betöltése Kép betöltése tar archívumból vagy STDIN bejelentkezés Regisztrátor abo bejelentkezés a docker rendszerleíró adatbázisba kijelentkezés Kijelentkezés a Docker rendszerleíró adatbázisból A konténerhálózat naplóinak lekérése Docker hálózatok kezelése szüneteltetés Minden folyamat szüneteltetése a konténerporton belül. Portleképezések listázása a CONTAINER-hez tartozó portleképezések listája ps Konténerek listája pull Kép vagy adattár lehívása a rendszerleíró adatbázisból Push image vagy a tároló átnevezése a rendszerleíró adatbázisba Tároló átnevezése újraindítás Tároló újraindítása rm Egy vagy több tároló eltávolítása rmi Egy vagy több parancs eltávolítása új tárolóból mentés Kép(ek) mentése tar archívumba keresés keresés a Docker Hub a képekhez elindul Egy vagy több leállított tároló statisztika Élő közvetítés tárolója állj Állj Futó tárolócímke Címke a képen a vgori lerakatban. A tároló futó folyamatának megjelenítése szüneteltetés feloldása A tárolóköteten belüli összes folyamat szüneteltetésének feloldása Docker-kötetek kezelése várakozás Blokkolás, amíg a tároló leáll, a kilépési kód kinyomtatása Futtassa a "docker COMMAND --help" parancsot további információkért egy parancs.Szintén egy kis vegyes docker a webes projektek fejlesztési/szállítási folyamatának strukturálásához. Elmagyarázom a "Habrahabr" olvasóinak a dokkolóról szóló bevezető cikk fordítását - "A dokkoló megértése". Tehát egy dokkoló is?A Docker egy központi platform a programok terjesztéséhez, szállításához és hasznosításához. Docker szoftver a frissítések nagy részéhez. A docker segítségével megtekintheti programját infrastruktúrájából, és infrastruktúrává alakíthatja, mint egy kerovan kiegészítő. A Docker segít a kódjának shvid, shvid testuvati, shvid vikladati programjaiban, és megváltoztatja az órát a kód írása és a kód futtatása között. A Docker elrabolja a további könnyű platformkonténer virtualizáció, a vicorist folyamatok és segédprogramok árát, amelyek hozzáadják a keruvati és vicladati programokat.A docker lényegében praktikus program futtatását teszi lehetővé, függetlenül attól, hogy az egy konténerben végtelenül el van választva. A biztonságos elkülönítés lehetővé teszi, hogy egy órán keresztül sok konténert futtasson egy gépen. A konténer jellege nagyon fontos, mivel a felügyelő további támogatása nélkül is elindítható, így többet érhet el az útból. A konténervirtualizációra használható platform az alábbi típusokhoz lehet a legjobb minőségű:
Mi van, ha használhatom a dockert?Shvidke vikladannya a dodatkivA Docker csodálatos, hogy végigmegy egy fejlesztési cikluson. A Docker lehetővé teszi a Viktor gyártók számára, hogy helyi konténerekben böngészhessenek programokkal és szolgáltatásokkal. Folyamatos integrációt és telepítési munkafolyamatot kell lehetővé tennünk.Például a fejlesztők helyileg írnak kódot, és megosztják saját szoftvercsomagjukat (dokkerképek készletét) a kollégákkal. Ha kész a bűz, nyissa meg a tároló kódját a teszt-maidan számára, és indítsa el, ha szükséges. A teszt maidan büdös miatt elküldheti annak a képnek a kódját a gyártásba. Egyszerűbb vikladannya és rozgortannyaA dokkoló platform konténereken alapul, hogy lehetővé tegye a konténer egyszerű portolását a címzettekhez. A Docker-tárolók alkalmazhatók a helyi gépen, mind a valós életben, mind az adatközpont virtuális gépein, valamint a Hmarában.A docker hordozhatósága és könnyű természete lehetővé teszi, hogy könnyedén dinamikusan válogathassa a lehetőségeket. Akkor vikoristovuvati docker, miért nem tűz fel vagy oltsa ki a programot vagy szolgáltatást. A Docker-forgalom lehetővé teszi az élő képek valós időben történő futtatását. Magas árak és még több árA Docker olyan trükkös, amilyen okos. Win nada a stiyku, a virtuális gépek költséghatékony alternatívája a hypervisor segítségével. A Win különösen bíbor a legmagasabb navantazhen fejében, például ha hatalomról van szó, akkor ez egy platform-as-service. Az Ale vin kis- és közepes méretű gyerekeknek is barna, ha többet akarsz kihozni a nyilvánvaló forrásokból.A Docker fő összetevőiA Dockernek két fő összetevője van:
Docker architektúraDocker vikoristovuє architektúra ügyfélkiszolgáló. A Docker kliens egyesül a Docker démonnal, amely gondoskodik a tárolók megnyitásáról, elindításáról és terjesztéséről. A kliens és a szerver sértése egy rendszeren is működhet, csatlakoztathatja a klienst a docker démonhoz. Az ügyfél egy socketen vagy egy RESTful API-n keresztül csatlakozik a szerverhez. Docker démonA diagramokon a Yak látható, a démon a gazdagépen fut. A Koristuvach nem a közvetlen vonalon lép kapcsolatba a szerverrel, hanem vikoristovuє a tsiy kliens számára.Docker kliensDocker kliens, a docker program a Docker fő felülete. Vona meg fogja tagadni a parancsot koristuvachként és docker démonnal együtt.Középső dokkolóAhhoz, hogy okos legyen, mit csinál a docker, három összetevőt kell ismernie:
KépekA Docker-kép csak olvasható sablon. Például a kép utánozhatja az Ubuntu operációs rendszert az Apache-val, és hozzáadhatja azt. Képek vikoristovuyutsya szár konténerek. A Docker lehetővé teszi új képek egyszerű létrehozását, új képek rögzítését, vagy zárolhatja mások képeit. A képek a docker-gyűjtemény részét képezik.Iktató hivatalDocker képregisztráció. A hatalmas és privát reestree futtatásához, ebben az esetben képeket és képeket adhat hozzá. A nyilvános Docker-nyilvántartás a Docker Hub része. Itt egy csodálatos képgyűjteményt láthat. Jak tudod, az imázs lehet veled, mert lehetsz győztes képpel, azzal. A regiszter a kiterjesztési komponens.ContaineriA tárolók hasonlóak a könyvtárakhoz. A konténerekben minden elfér, ami a robotprogramokhoz szükséges. A bőrtartály kihajt a képből. A konténerek kinyithatók, elindíthatók, zupineni, elhalaszthatók vagy erőszakkal. A bőrtartályt sütő nélküli töltelékként használják. A konténer a robot fő alkotóeleme.Szóval yak docker?Hagyj egy jelet, tedd:
Jak pratsyuє kép?Az is ismert, hogy a kép egy csak olvasható sablon, ahol a tárolót kinyitják. A bőrképet a megfelelőek halmazából tároljuk. Docker vikoristovuє unió fájlrendszer dnannya dsikh rіvnіv egy képen. Az Union fájlrendszer lehetővé teszi a különböző fájlrendszerekből származó fájlok és könyvtárak (kis fájlok) átfedését, így koherens fájlrendszer jön létre.Az egyik ok a docker yaku révén a könnyű súly - az ilyen rіvnіv ára. Ha megváltoztatja a képet, például frissíti a programot, akkor egy új rivn jelenik meg. Tehát a teljes kép megváltoztatása nélkül, bármi legyen is az, amit megváltoztathat, egy virtuális géppel el lehet végezni, de elég csak befejezni, vagy új. És nem kell terjesztenie az egész új képet, a holdat megfosztják az újtól, de lehetővé teszi az egész új kép terjesztését, ami egyszerűbb, mint a shvidshe. A bőrkép alapján є az alapkép. Például ubuntu, Ubuntu alapkép vagy fedora, Fedora alapkép. Dönthet úgy is, hogy alapot képez új képek létrehozásához. Például, ha rendelkezik egy apache képpel, vikoristovuvati yak alapképet készíthet webhelyeihez. Jegyzet! Töltse le a Dockert, hogy átvegye a képet a Docker Hub beállításjegyzékéből. A Docker képek alapképek halmazából állíthatók be, ezeknek a képeknek a beállításáról szóló leírások halmazát utasításoknak nevezzük. A redők bőrutasítása a chi rivn új képe. Útközben lesznek az utasítások:
Az utasítások a Dockerfile-ból származnak. A Docker beolvassa a Dockerfile-t, ha képet néz, megjeleníti az utasításokat és elforgatja a képet. Yak pratsyuє dokkoló reєstr?Regisztrátor – a docker képek teljes tárháza. Az aktuális kép megírásához közzéteheti a Docker Hub nyilvános nyilvántartásában vagy egy speciális nyilvántartásban.A docker kliens segítségével képeket is közzétehet, és képeket adhat hozzá a gépéhez a dockerből a tárolók törléséhez. A Docker Hub közzétette a privát képek listáját. A nyilvános skinekről való fényképezés és képek ugrása mindenki számára elérhető. Ahelyett, hogy magánfelszerelést használna, nincs tréfa az eredménnyel. Csak akkor vághatja le és nyithatja ki a tartályokat, ha akarja, és a fahéjrudakat is. Jak pratsyuє konténer?A tárolót az operációs rendszer, a fájl fájljai és a metaadatok tárolják. Ismeretes, hogy a bőrtartály behajlik a képbe. Az egész kép olyan, mint egy docker, de a konténernek el kell indulnia egy folyamattal, ha elindítja a tárolót és elindítja a konfigurációs adatokat. A Docker kép csak olvasásra érhető el. Ha a docker launcher egy konténer, akkor a kép tetején nyitom meg az olvasási/írási parancsot (vikoristovuchi union fájlrendszer, ahogy korábban értettük), ilyenkor elindul az addon.Hogyan indul el, amikor a konténer elindul?A további dockerprogramok vagy a további RESTful API esetében a docker-ügyfél, akárcsak a docker-démon, elindítja a tárolót.$ sudo docker run -i -t ubuntu / bin / bash Egy parancs segítségével szabaduljunk meg tőle. A kliens a docker paranccsal, a run opcióval indítható el, mintha azt mondaná, hogy egy új konténer indul. A konténer indításának minimális lehetőségei є ezek az attribútumok:
Hogyan látja a motorháztető alatt, amikor elindít egy parancsot? Docker sorrendben tegye a következőket:
Vikoristovuvani technológiákA Go-ban való írás dokkolója és a Linux kernel erejének győztes tettei, hogy az útmutatást és funkcionalitást valósítson meg.NévterekA Docker névterek technológiát használ az elszigetelt munkaterületek szervezésére, amelyeket konténereknek neveznek. Ha tárolót futtat, a docker megnyitja a tároló névterét.Az öblítések izolálásának ára, a kilövések konténerének bőrszemlélete a hatalmasságában, és nincs mód az új rendszer elérésére. Docker vikoristovu listája:
Kontroll csoportokDocker is egy viktoriánus technológiai cgroups vagy kontrollcsoportok. A robotika kulcsa az elszigetelt programozás, ha akarja, csak erőforrásokból álló kiegészítést ad hozzá. Tse kezes, shho konténerek lesznek kedves susids. A vezérlőcsoportok lehetővé teszik a pool rendelkezésre álló erőforrásainak elosztását, és szükség esetén összekapcsolás létrehozását. Például beépíthet egy kis mennyiségű memóriát a tárolóba.Uniós fájlrendszerAz Union File Sysem vagy UnionFS egy teljes fájlrendszer, amely félénken, egyszerűen és gyorsan használható a hibák kezelésére. A Docker az UnionFS-t használja a blokkok megnyitásához, amelyekből a konténer lesz. A Docker számos lehetőséget kínál az UnionFS számára, beleértve: AUFS, btrfs, vfs és DeviceMapper.Konténerek formázásaA Docker egy darab komponens egy darabban, ahogy konténerformátumnak nevezzük. A nevek győztes formátumát libcontainernek hívják. A Docker a hagyományos konténerformátumot is átveszi Linuxon a kiegészítő LXC mögött. A Maybut Docker testreszabhatja a különböző tárolóformátumokat. Például a BSD Jails vagy a Solaris Zones integrálása.Készüljön fel a projektre - kérem, dyakuyu!
Olvassa el is
|