Dokkmunkás

Dokkmunkás
Típusú ingyenes és nyílt forráskódú szoftverek , virtualizációs mechanizmus [d] és konténerleírás formátum [d]
Szerző Solomon Hykes [d]
Fejlesztő dokkoló
Beírva Menj [1]
Operációs rendszer Linux [2] , Microsoft Windows [3] , macOS [4] és Unix-szerű operációs rendszer
Első kiadás 2013. március 13. [5]
Hardver platform x86_64 , ARM [6] és IBM System/390
legújabb verzió
Olvasható fájlformátumok Dockerfile [d]
Generált fájlformátumok Dockerfile [d]
Engedély Apache License 2.0 [8] [9] és szabadalmaztatott
Weboldal docker.com
 Médiafájlok a Wikimedia Commons oldalon

A Docker  egy szoftver, amely automatizálja az alkalmazások telepítését és kezelését konténeres környezetekben , egy alkalmazástároló. Lehetővé teszi egy alkalmazás „csomagolását” az összes környezetével és függőségével egy olyan tárolóba, amely bármely Linux rendszeren üzembe helyezhető, amely támogatja a kernelben lévő cgroupokat , és is biztosít ezeknek a tárolóknak a kezelésére. Kezdetben az LXC képességeit használta , 2015-től pedig saját könyvtárát kezdte használni, amely a Linux kernel virtualizációs képességeit absztraktálja - libcontainer . Az Open Container Initiative megjelenésével megkezdődött az átmenet a monolitikus architektúráról a moduláris architektúrára.

Az azonos nevű startup cég fejleszti és támogatja , két kiadásban terjesztve – nyilvános ( Community Edition ) az Apache 2.0 licenc alatt és szervezetek számára ( Enterprise Edition ) saját licenc alapján [10] . Go nyelven írva .

Történelem

A projekt a Solomon Hykes által 2008-ban alapított dotCloud belső fejlesztéseként indult azzal a céllal, hogy egy nyilvános PaaS platformot hozzon létre különféle programozási nyelvek támogatásával . Hayks mellett a dotCloud mérnökei, Andrea Luzzardi és François-Xavier Bourlet is jelentős szerepet játszottak a kezdeti fejlesztésben .

2013 márciusában a Docker kód az Apache 2.0 [11] licenc alatt jelent meg . 2013 júniusában Ben Golub , aki korábban a Gluster élén állt (amely a GlusterFS elosztott tárolási technológiát fejlesztette ki, és 2011-ben 136 millió dollárért vásárolta meg a Red Hat ) [12] , meghívást kapott a dotCloud vezérigazgatójának . 2013 októberében, hangsúlyozva az új kulcstechnológiára való összpontosítást, a dotCloudot Docker névre keresztelték át (míg a PaaS platform a korábbi néven - dotCloud - megmaradt).  

2013 októberében megjelent a replikált OpenStack IaaS platform Havanna kiadása , amely a Docker támogatást valósítja meg ( az OpenStack Nova illesztőprogramjaként ). 2013 novembere óta a Docker részleges támogatása a Red Hat Enterprise Linux disztribúciós készlet 6.5-ös verziójában [13] , a Fedora disztribúciós készlet 20. verziójában pedig teljes támogatást kapott. Korábban megállapodás született a Red Hattal a Docker beépítéséről replikált OpenShift PaaS platform 2014-től [14] . 2013 decemberében bejelentették a Docker-tárolók telepítésének támogatását a Google Compute Engine [15] környezetben .

2014 óta dolgoznak azon, hogy a Docker támogatást beépítsék a Hadoop elosztott alkalmazási keretrendszer felügyeleti környezetébe ; A Hadoop virtualizációs platformjának 2014 májusában elvégzett tesztelési eredményei szerint a Docker lényegesen nagyobb teljesítményt mutatott a fő műveletekben (a virtuális csomópontok tömeges létrehozása, újraindítása és megsemmisítése), mint a KVM , különösen a A virtuális számítási csomópontok tömeges létrehozása, a processzor erőforrások felhasználásának növekedése a Dockerben 26-szor alacsonyabb, mint a KVM-ben, és a RAM erőforrások felhasználásának növekedése  háromszor kisebb [16] .

2017 óta a termék Apache 2.0 licenc alatti szabadon terjesztett kiadása mellett megjelent egy szervezeteknek szóló kiadás is, amelyet az elérhető funkcióktól függően évi 750 és 2000 dollár közötti áron értékesítenek csomópontonként [10] .

Alkalmazás

A szoftver Linux környezetben fut olyan kernellel, amely támogatja a cgroupokat és a névterek elkülönítését ( névterek ); csak x86-64 és ARM platformokra vannak buildek [18] . Az 1.6-os verziótól (2015. április) már a Windows család operációs rendszereiben is használható [19] .

A tárhely megtakarítása érdekében a projekt az Aufs fájlrendszert használja , amely támogatja a lépcsőzetes egyesített csatolási technológiát : a konténerek az alap operációs rendszer képét használják, és a változtatásokat külön területre írják. Támogatja továbbá a tárolók elhelyezését a Btrfs fájlrendszerben, ha engedélyezve van az írás-másolás .

A szoftver tartalmaz  egy konténerkiszolgáló démont (amelyet a docker -d parancs futtat ), klienseszközöket , amelyek lehetővé teszik a képek és tárolók kezelését a parancssori felületről , valamint egy API -t, amely lehetővé teszi a tárolók programozott kezelését REST stílusban .

A démon biztosítja a csomóponton futó tárolók teljes elkülönítését fájlrendszer szinten (minden tárolónak saját gyökér fájlrendszere ), folyamat szinten (a folyamatok csak a tároló saját fájlrendszeréhez férnek hozzá, és az erőforrások szétválasztása libcontainer ), hálózati szinten (minden tároló csak a hozzá tartozó hálózati névtérhez és a megfelelő virtuális hálózati interfészekhez fér hozzá).

A kliens eszközkészlet lehetővé teszi folyamatok indítását új tárolókban ( docker futtatása ), konténerek leállítását és elindítását ( docker stop és docker start ), folyamatok szüneteltetését és folytatását a tárolókban ( docker szüneteltetése és docker szüneteltetése ). Egy sor parancs lehetővé teszi a futó folyamatok figyelését ( docker ps , hasonló a ps - hez Unix rendszereken , docker top , hasonló a tophoz és mások). Speciális script fájlból ( docker build , a script fájl neve Dockerfile ) lehet új képeket készíteni, lehetőség van a konténerben végrehajtott összes változtatást új képbe írni ( docker commit ). Minden parancs működhet mind a helyi rendszer docker-démonjával, mind a hálózaton elérhető bármely Docker-kiszolgálóval. Ezenkívül a parancssori felület beépített képességekkel rendelkezik a nyilvános Docker Hub adattárral való interakcióhoz, amely előre beépített alkalmazásképeket tartalmaz, például a docker keresési parancs lehetővé teszi képek keresését a benne tárolt képek között [20] , a képek letölthetők a helyi rendszerre ( docker pull ), lehetőség van a helyileg épített képek Docker Hub-ra tolására is ( docker push ).

A Docker rendelkezik egy Docker Compose csomagkezelővel is, amely lehetővé teszi a több tárolóból álló alkalmazások leírását és futtatását; A hozzá tartozó konfigurációs fájlokat a YAML írja le .

Jegyzetek

  1. http://thenewstack.io/go-programming-language-helps-docker-container-ecosystem/
  2. https://docs.docker.com/engine/installation/linux/
  3. https://docs.docker.com/docker-for-windows/
  4. https://docs.docker.com/docker-for-mac/
  5. Schmidt J. Docker bekommt 15 Millionen Risikokapital  (német) - heise online , 2014.
  6. Tsai T. https://www.docker.com/blog/getting-started-with-docker-for-arm-on-linux/ – 2019.
  7. Kiadás v20.10.21
  8. https://github.com/docker/docker/blob/master/LICENSE
  9. LICENC  _
  10. 12 Thomas Claburn . A Docker nagy bizarrnak tűnik: nem te vagy, hanem az EE - Enterprise Edition . Egyenesen a Red Hat játékkönyvéből : Vegye ki a VM-képeket, és fizessen a támogatásért . A nyilvántartás (2017. március 3.) .  – „A Docker kibővítette termékcsaládját két E-vel, az Enterprise Edition számára, a konténerszoftvernek a vállalkozások igényeihez hangolt változatával […] És természetesen vannak olyan szintek, amelyek támogatási díjakkal járnak: Basic (750 USD/év) ; Standard (1500 USD/év); és Advanced (2000 USD/év). Letöltve: 2017. június 29. Az eredetiből archiválva : 2017. július 1.  
  11. Avram, Abel Docker : Automatizált és konzisztens szoftvertelepítések  . InfoQ (2013. március 27.). Letöltve: 2014. május 3. Az eredetiből archiválva : 2014. május 3.
  12. Darrow, Barb PaaS úttörője, a dotCloud új vezérigazgatót kapott az ipari állatorvosnál, Ben Golubnál . A Gluster korábbi vezérigazgatója szerint a PaaS-eknek több stack-et és környezetet kell támogatniuk – házon belül, nyilvános felhőkön,  bárhol . GigaOM (2013. július 23. ) Letöltve: 2014. május 3. Az eredetiből archiválva : 2014. május 3.
  13. Sean Michael Kerner. A Red Hat Enterprise Linux 6.5 precíziós időzítést biztosít . A Red Hat új vállalati Linux-kiadása új biztonsági, virtualizációs és időmérő funkciókkal debütál  (  hozzáférhetetlen link- előzmények ) . eWeek (2013. november 21.) . Letöltve: 2014. május 3.
  14. Williams, Alex A pokol mátrixa és két nyílt forráskódú projekt a feltörekvő agnosztikus  felhőhöz . TechCrunch (2013. július 28.). Letöltve: 2014. május 3. Az eredetiből archiválva : 2016. szeptember 24..
  15. Frederick Lardinois. A Google számítási motorja eléri az általános elérhetőséget, 10%-kal csökkenti a példányárakat, 16 magos példányokkal és Docker-támogatással bővül  . TechCrunch (2013. szeptember 19.). Letöltve: 2014. május 3. Az eredetiből archiválva : 2014. május 2..
  16. Jack Clark. A Docker átkerült a Hadoopba, mivel a benchmarkok rendkívül gyors teljesítményt mutatnak . A kódot elkövetők azt remélik, hogy a nyílt forráskódú technológia szentségtelen egyesülése gyors gonzalez  virtualizációt fog szülni . A nyilvántartás (2014. május 2.) .  - "A számítási csomópont erőforrás-használati mutatói alapján a soros virtuálisgép-csomagolási teszt során: A Docker LXC CPU-növekedés körülbelül 26-szor alacsonyabb, mint a KVM. Ezen a felületen ez 26-szoros sűrűségpotenciál-növekedést jelez CPU-szempontból a docker LXC használatával a hagyományos hypervisorhoz képest. A Docker LXC memóriabővülés körülbelül háromszor alacsonyabb, mint a KVM. Letöltve: 2014. május 3. Az eredetiből archiválva : 2014. május 3.
  17. Pethuru Rai; Jeeva S. Chelladhurai; Vinod Singh. Docker tanulás. - Packt Publishing, 2015. - 240 p. — ISBN 978-1-78439-793-7 .
  18. Telepítse a Dockert  . Docker dokumentáció. Letöltve: 2017. augusztus 13. Az eredetiből archiválva : 2017. augusztus 13.
  19. Docker 1.6: Engine & Orchestration frissítések, Registry 2.0 és Windows Client Preview – Docker Blog  , Docker Blog (  2015. április 16.). Archiválva az eredetiből 2017. augusztus 13-án. Letöltve: 2017. augusztus 13.
  20. A lerakat a registry.hub.docker.com címen található

Irodalom

Linkek