Minden, amit a Docker Hubról tudnia kell

Ismerkedjünk meg a Docker Hubbal.

Ma ebben az oktatóanyagban megismerjük a Docker Hub-ot, beleértve a használatát, saját arculat létrehozását, valamint azt, hogy miként segít a képek közzétételében és oda-vissza húzásában. Docker Hub. Emellett eltöltünk egy kis időt a Docker Hub népszerű adattárainak felfedezésével is.

Előfeltételek

A Docker alapszintű ismerete, a Windows és a Linux környezet ismerete szükséges. Ez az oktatóanyag a Docker Desktop eszközt használja a folyamatban lévő gyakorlatok gyakorlására, azaz a kép létrehozására és a Docker Hubra való átküldésére. Windows és Mac felhasználók letölthetik és telepíthetik a webhelyről ittés a Linux felhasználók ezt követik link.

Mi az a Docker Hub?

A Docker Hub egy adattár-nyilvántartási szolgáltatás, amelyet a Docker Inc.

Lehetővé teszi docker-képek húzását és tolását a Docker Hub-ba és onnan. Ezt kezelhetjük GitHubként, ahol lekérjük és leküldjük a forráskódunkat, de a Docker Hub esetében letöltjük vagy közzétesszük a tárolóképeinket. Ez egy felhő alapú online adattár, amely mindkét típusú adattárat tárolja, azaz a nyilvános adattárat, valamint a privát adattárat. A nyilvános adattárak mindenki számára hozzáférhetők, de a privát adattárak az adattárak érintett tulajdonosa számára elérhetők; továbbá költséggel jár, ha bizonyos számú adattárat privátként tárolunk.

Docker Hub jellemzői

A Docker Hub a következő funkciókat kínálja.

#1. Képtárak

Segít a konténerképek megtalálásában és lehívásában a Docker Hubról.

Segít nekünk abban is, hogy a képeket nyilvános vagy privát adattárként továbbítsuk a Docker Hubhoz.

#2. Csapat és szervezetek

Lehetővé teszi számunkra, hogy munkacsoportokat hozzunk létre, és a tárolókat privátként toljuk ki, amely csak szervezetünkön belül használható. Ily módon sikerült hozzáférnünk a konténerképek privát tárolóihoz.

#3. GitHub és Bitbucket integráció

Lehetővé teszi az integrációt olyan forráskód-tárolókkal, mint a GitHub és a BitBucket.

#4. Automatizált építmények

Ha a forráskód bármilyen változása a forráskód-tárolókba került, az automatikusan észleli és összeállítja a tárolóképeket a GitHubból vagy a BitBucketből, és továbbítja azokat a Docker Hubhoz.

  A 11 legjobb Java IDE és online fordító a produktív fejlesztéshez

#5. Webhookok

Miután sikeresen továbbítottuk a képeinket, egy webhook segítségével elindítja a Docker Hub más szolgáltatásokkal való integrálását.

#6. Hivatalos és kiadói képek

A dockerek által biztosított jó minőségű képek hivatalos képnek számítanak, húzható és használható. Hasonlóképpen, a külső szállítók által biztosított kiváló minőségű képek kiadói képek, más néven hitelesített képek, amelyek támogatást és kompatibilitási garanciát nyújtanak a Docker vállalattal. A cikk későbbi részében további hitelesített képeket fogunk tárgyalni.

Első adattár létrehozása

Ehhez a lépéshez be kell jelentkezni a Docker Hub a bejelentkezési adataid segítségével. Ha nem rendelkezik fiókkal, a weboldalon található Regisztráció gombra kattintva már létrehozhat. Miután bejelentkezett, az üdvözlő oldalon a Tár létrehozása gombra kattintva hozhatja létre a tárat.

  • Miután rákattintott a Leraktár létrehozása elemre, egy nevet kér, adjon nevet a tárhelynek.

  • Válasszon egy nyilvános vagy privát láthatósági beállítást.

A forráskód-tárolóinkat, például a GitHub-ot és a BitBucket-et is integrálhatjuk összeállítási beállításokkal, de ez opcionális, és egy későbbi szakaszban is megtehető.

  • Ha minden elkészült, kattintson a Létrehozás gombra.

Gratulálunk! Létrehozta első tárolóit, amelyek a következőképpen fognak kinézni.

A Docker Hub csak egy privát adattárat biztosít nekünk ingyen. Bár, ha több privát adattárra van szükségünk, frissíthetjük fiókunkat fizetős csomagra.

Most nyissa meg a fent letöltött és telepített Docker Desktop eszközt/terminált, és jelentkezzen be a Docker Hubba egy parancs segítségével.

docker login

A képek felfedezése

Kétféleképpen kereshetünk nyilvános tárolókban és képekben a Docker Hubról, vagyis vagy a Docker Hub webhelyéről kereshetünk rá, vagy használhatjuk a parancssori eszközt, és futtathatjuk az alábbi parancsot. Vegyük fontolóra, hogy a MySQL-tárképben szeretnénk keresni.

docker search mysql

Kép letöltése

Letölthetünk egy képet a Docker Hub parancsból a pull paranccsal az alábbiak szerint

# docker pull mysql

Ha már van mysql kép a gépünkön, akkor a fenti parancs automatikusan frissíti a képet a legújabb verzióra. Itt érdemes szem előtt tartani, hogy ha észrevesszük a Docker keresési parancs kimenetét, sok MySQL-kép található a Docker Hubon, és ez azért van, mert bárki leküldhet egy képet. De rajtunk múlik, hogy a használati esetünk alapján melyiket használjuk, és a megfelelőt kell sajtolni.

  A Snaps remixelése a Snapchaten

Tegyük fel, hogy egy bitnami/mysql képet szeretnénk húzni.

# docker pull bitnami/mysql

Kép létrehozása

Ehhez a folyamathoz Dockerfile szükséges. A Dockerfile-t egy használati útmutatónak tekinthetjük, amely megmondja a dockernek, hogy mit kell összeszerelni. Röviden, ez egy konfigurációs fájl, amely folyamatosan összeállítja az utasításokat, amit mondunk neki, hogy állítsa össze.

Hogyan működik?

A Docker beolvassa az utasításokat egy Dockerfile-ból, és automatikusan képeket készít. A Docker kép egy réteges fájlrendszer, amely több csak olvasható rétegből áll, és a Docker kép minden egyes rétege egy Dockerfile utasításait képviseli. Kövesse az alábbi lépéseket a kép létrehozásához a Dockerfile segítségével.

Hozzon létre egy Docker-fájlt, amely meghatározza az alkalmazás konfigurációját.

# sudo vim Dockerfile

Megjegyzés – A fájl neve Dockerfile legyen nagy „D” betűvel.

FROM ubuntu:16.04
MAINTAINER [email protected]
RUN apt-get update
RUN apt-get install –y mysql
CMD echo "My first image created."

Vessünk egy pillantást a Dockerfile-ban használt fontos kulcsszavakra

  • # szimbólumot használhatunk megjegyzések hozzáadásához egy Docker-fájlhoz
  • A „FROM” kulcsszó határozza meg a használandó alapképet.
  • Az „KARBANTARTÓ” kulcsszó az a személy, aki meg akarja őrizni ezt a képet.
  • A „RUN” kulcsszó a képhez adott utasítás futtatására szolgál. Esetünkben először frissítse a rendszert, majd telepítse a MySQL-t.
  • A „CMD” kulcsszó a tároló elindítása utáni parancs végrehajtására szolgál.
  • A „COPY” kulcsszó használható egy fájl másolására a gazdagép operációs rendszerünkről a docker-tárolóba.
  • Az „EXPOSE” kulcsszó annak a portszámnak a megadására szolgál, amelyen a tároló futtatni fogja a folyamatát.

Futtassa az alábbi parancsot a Docker-kép létrehozásához

Szintaxis:

docker build -t /repo-name .

# docker build -t asadali08537/first-repo .

A fenti parancsban a kép neve és „.” az aktuális munkakönyvtárat határozza meg. Ez azt jelzi, hogy a Docker meg kell keresnie a docker-fájl aktuális könyvtárát. A „-t” a kép címkézésére szolgál. Hasonló kimenetet láthatunk:

Most teszteljük a képünket a docker futtatási parancsán keresztül.

docker run asadali08527/first-repo

A fenti parancs végrehajtása megkéri a Docker képfájlt, hogy sikeresen telepítse a MySQL-t a gépére az összes szükséges frissítéssel, és végül visszhang üzenetet is megjelenít.

Kép tolása

Ha a képfájlunk sikeresen létrejött és fut, push paranccsal továbbíthatjuk a Docker Hubhoz.

docker push asadali08527/first-repo

Ellenőrizhetjük a képcímkéket és az állapotot a Docker Hubon, ami valahogy így fog kinézni.

Mi az a Docker Certified Images?

Ezek a hivatalos képek, amelyeket a gyártók vagy a közreműködők toltak. A Docker Hub csak akkor tanúsíthat egy képet, ha annak tartalma megfelel a Docker Hub által biztosított szabályoknak, szabványoknak és törvényeknek. Röviden, ennek a képnek át kell mennie bizonyos alapszintű teszteken.

  A legjobb 8 online tanfolyam a Full Stack digitális marketinghez

A Docker Hub biztosítja az inspectDockerImage eszközt, amelyen keresztül a szállító saját maga hitelesítheti a képeket és a beépülő modulokat (általában a szállító vagy a közreműködő közzéteszi beépülő moduljait a kötetek és hálózatok naplózásához).

Jegyzet –

Ahhoz, hogy képünket docker-tanúsítvánnyal tegyük közzé, először magunknak kell hitelesítenünk és tesztelnünk a képeinket és a bővítményünket a InspectDockerImage eszközt, miután tanúsítottuk és sikeresen teszteltük, a Docker Hub a benyújtás után tanúsítja azt. Ha tartalmunk nem tanúsított környezetet igényel, akkor azt semmilyen körülmények között nem lehet minősítettként közzétenni.

Számos kurált és optimalizált kép érhető el a Docker Hubon.

Ezeknek a képeknek a népszerűsége számos tényezőtől függ, mint például a vonzásoktól, a piaci jelenléttől, az értékelésektől, az elégedettségi pontszámoktól stb. A legnépszerűbb adattárak részletes listájához navigáljunk a Docker Hub weboldal. A kép használata az operációs rendszertől és annak architektúrájától is függ. Ha tudjuk, hogy a lehívott képeket melyik operációs rendszerhez és annak architektúrájához fogják használni, akkor az alábbi kulcsfontosságú tényezőket figyelembe kell vennünk, mielőtt egy képet lehúznánk.

  • Keressen egy adott verziót címkék segítségével (főleg a legújabb).
  • Válassza azt, amelyiknek maximális letöltési száma és csillaga van.
  • Ellenőrizze a frissítéseket (amikor frissült utoljára).
  • Ha lehetséges, ellenőrizze a típusát, legyen az ellenőrzött kiadó vagy hivatalos (Docker Certified).

Webhookok

A webhook egy webes visszahívás, amely eseményekkel működik, és ez egy módja annak, hogy egy alkalmazás valós idejű információkat nyújtson egy másik alkalmazásnak. Manapság szinte minden alkalmazás rendelkezik webhook lehetőséggel, így a Docker Hub is rendelkezik ezzel a funkcióval.

Ez egy HTTP push API, amelyet a felhasználó által kijelölt események váltanak ki. A dockerben webhook segítségével értesíthetjük az érintett képeket használó alkalmazást vagy szolgáltatást. Általában úgy konfiguráljuk a webhookot, hogy a docker az események folyamata, így minden új kép feltöltése elindítja a tesztalkalmazásokat az aláhúzott tesztesetek futtatására.

Amint a teszt eredménye sikeres, egy másik eseményt indít el, amely a tárolótelepítés lesz, és ha a telepítés sikeresen megtörtént, más eseményeket indít el az eddig elvégzett módosítások naplózásához.

Következtetés

Úgy gondolom, hogy most már tisztességes ismeretekkel rendelkezik a Docker Hubról és arról, hogyan kereshet, hozhat létre és küldhet képeket. Ne feledje, hogy amikor nyilvános képeket küld, bárki láthatja.

Ha még nem, tekintse meg ezt a Docker telepítési útmutatót.