Szeretné tudni, mit csinálnak a Docker alkalmazások a színfalak mögött? Tanuljunk meg többet a naplók néven ismert titkos ablakáról, amely a tárolókba kerül, és minden lépésüket megjeleníti. A naplók rendkívül hasznosak a problémák megoldásában. Mielőtt azonban elkezdenénk, vessünk egy pillantást arra, hogy mi is az a Docker és a Docker Compose.
A Docker lehetővé teszi, hogy alkalmazásait kis tárolókba csomagolja, és a legtöbb operációs rendszeren függőségek nélkül futtassa. Ez olyan, mintha alkalmazásait konténerek nevű kis dobozokba helyezné, amelyek mindenhol ugyanúgy futhatnak. A tárolók ismerete fontos előfeltétele a Docker Compose megismerésének. Ezért javaslom, hogy először olvassa el a blogunkat a konténerezés előnyei.
A Docker Compose a Dockerrel érkezik, és leegyszerűsíti a több konténeres alkalmazás fejlesztését a szolgáltatások, hálózatok és tárhely láncolásával. A Docker-tárolónaplók és a Docker Compose naplózása segít a fejlesztőknek látni, hogy az egyes tárolók mit csinálnak.
Szóval, kíváncsi a Docker Compose naplókra? Jó helyen jársz. Ez a blog elmagyarázza a Docker Compose naplók alapjait, és részletesebb részleteket is tartalmaz. Ismerje meg, hogyan hozhatja ki a legtöbbet a Docker Compose-ból projektjeihez.
A Docker Compose Logs jelentősége
Képzelje el, hogy egy fejlesztő elindít egy alkalmazást a Dockerrel, de kihagyja a Docker-naplók beállítását. Elsőre úgy tűnik, minden rendben van. A felhasználók azonban hamarosan hibákat találnak, és az alkalmazás lelassul. Docker-naplók nélkül a fejlesztő nem láthatja, hogy mi hibázott a Docker-tárolókban. A Docker Compose naplók olyanok, mint ezeknek a tárolóknak a részletes nyilvántartása. Rögzítik a történések minden részletét, ami fontos a későbbi problémák megtalálásához és kijavításához.
Fejlesztőként vagy rendszergazdaként meg kell értenie, mi történik a többláncos alkalmazásokon belül és azok között. Ez az a hely, ahol a Docker Compose naplók praktikus eszközként működnek. Tehát miért van szükség ezekre a naplókra?
-
Hibaelhárítás és hibakeresés
Ellenőrizze a dockernaplókat, ha egy alkalmazás nem fut megfelelően, vagy hibákat észlel. A Docker-naplók az első források, amelyek segítségével nyomon követheti a problémát. A dockernaplók vizsgálatával a fejlesztők pontosan meghatározhatják a problémák kiváltó okát és forrását, legyen szó a kód hibájáról, hibás konfigurációról vagy erőforrás-problémáról.
-
Az alkalmazás állapotának figyelése
Az alkalmazásnaplók rendszeres figyelése segít megérteni a szolgáltatások általános állapotát. A naplók felfedhetnek korai figyelmeztető jeleket, például ismétlődő hibákat és lassú válaszokat. Ezeknek a mintáknak a korai megfigyelése megelőzheti a lehetséges problémákat a jövőben.
-
Audit és megfelelőség
Azon alkalmazások esetében, amelyeknek meg kell felelniük bizonyos szabványoknak, a docker naplók jelentik az első bizonyítékot arra vonatkozóan, hogy az alkalmazás megfelel-e az irányelveknek. Ezek a naplók alapvető szerepet játszanak az engedélyezett vagy nem engedélyezett tevékenységek megfigyelésében is.
-
Optimalizálás
A naplók értékes erőforrások a szoftveroptimalizáláshoz a teljesítményadatok biztosításával. A fejlesztők például azonosíthatják a lassan futó lekérdezéseket, a nem hatékony kódútvonalakat vagy az alulkihasznált erőforrásokat.
Docker-recept készítése: Webszerver üzembe helyezése
Ebben a részben egy Docker-recept közös létrehozását mutatjuk be. Először létre kell hoznunk valamit, hogy elkezdhessük utazásunkat a Docker Compose naplókkal. Telepítsünk egy webszervert erre a célra. Dockerfile létrehozásához egyszerűen futtassa nano Dockerfile a VPS kívánt mappájába a következő tartalommal, majd mentse el:
FROM nginx:alpine RUN rm /usr/share/nginx/html/index.html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
Tehát mit csinálnak ennek a kódnak az egyes sorai?
- Kezdjük egy könnyű alappal, nginx: alpesi.
- Ezután töröljük az Nginx alapértelmezett üdvözlőoldalát.
- Ezután megbizonyosodunk arról, hogy a webszerver figyel a porton 80.
- Végül futtatjuk az Nginx szervert CMD.
Most a Docker-fájlunk készen áll, továbblépünk a következő lépésre, amely a Docker Compose fájl létrehozása. Íme a felépítése docker-compose.yml fájl:
version: '3.8' services: web: build: . ports: - "8080:80" volumes: - ./index.html:/usr/share/nginx/html/index.html
Bontsuk fel, hogy teljesen megértsük az egyes részeket:
- verziót használjuk 3.8.
- A következő sorban szolgáltatásunkat nevezzük „web“.
- Ezután utasítjuk a Dockert, hogy az aktuális mappából építse fel webszerverünket.
- A gazdagépünk 8080-as portját összekapcsoljuk a tárolónk 80-as portjával, hogy webszerverünk kapcsolatot létesítsen.
- Végül a kötetek konfigurációs térképei index.html a gazdalemezről a tárolóba. Később létrehozhat egy index.html fájlt bármilyen tartalommal, és helyezze el oda, ahol a Dockerfile és docker-compose.yml fájlok léteznek.
Most itt az ideje, hogy a Docker Compose szolgáltatással futtassuk a Docker-tárolónkat. Egyszerűen futunk dokkoló-komponálni.

Ha egyszer futtatja a dokkoló-komponálni parancsot, a Docker letölti a szükséges képeket az internetről, és konfigurálja azokat a konfigurációs fájljainkban leírtak szerint.
Annak ellenőrzéséhez, hogy webszerverünk működik-e, nyissa meg a webböngészőt, írja be VPS IP-címét, és kérjen hozzáférést a 8080-as porthoz.

Mellékes megjegyzésként használhatod docker-compose up -d hogy a háttérben futtassa a tárolót.
Naplók elérése a Docker Compose segítségével
Webszerverünk most már készen áll, üzemel és működik. Már naplókat generál, és tárolja ezeket az információkat későbbi használatra. A docker-írási naplók elérése elengedhetetlen a hibaelhárításhoz és a figyeléshez. De hogyan olvashatjuk ezeket a naplókat? Itt van dokkoló-komponálja a naplókat jól jön. Győződjön meg arról, hogy abban a mappában van, ahol a konfiguráció létezik, és futtassa a parancsot.

Néha előfordulhat, hogy látni szeretné a naplók élő verzióját, miközben azok generálnak. Egyszerűen adja hozzá az -f parancsot az előző parancs végéhez, és futtassa dokkoló-összeállítás naplók -f.

Előfordulhat, hogy egyes Docker-alapú alkalmazások nem biztosítanak időbélyeget a naplóikban. Ezért használhatja dokkoló-összeállítás naplók -t hogy a napló minden sorához rögzítési időt adjon hozzá.

A Docker Logs a legfrissebb bejegyzéseket is megjelenítheti. Ennek eléréséhez használja naplók összeállítása – farok 10 a legutóbbi 10 naplóbejegyzés megtekintéséhez. A Docker összeállítja a naplók végét, és ehhez hasonlóan a Docker naplózási vége különösen akkor hasznos, ha gyorsan szeretné ellenőrizni a legutóbbi tevékenységeket anélkül, hogy végiggörgetné a naplózási előzményeket.

A Docker Compose használatának elsődleges célja több tárolóból álló alkalmazások létrehozása. Ezért előfordulhat, hogy a kívánt szolgáltatáshoz bizonyos naplókat kell olvasnia. Ehhez használja docker-compose logs -f SZOLGÁLTATÁS, ne felejtse el cserélni SZOLGÁLTATÁS a szolgáltatás tényleges nevével.

Docker naplózás
A Docker ökoszisztéma összetettebbé válhat a konvergens alkalmazásokhoz, különösen nagy környezetekben. Mint már tudjuk, minden tároló naplókat generál. Ezért a naplózási illesztőprogram néven ismert mechanizmus felelős a naplók fogadásáért, kézbesítéséért és tárolásáért. Alapértelmezés szerint a Docker JSON-fájlokat használ a naplózási illesztőprogramhoz, de számos más illesztőprogramot is támogat, mindegyiknek előnyei és hátrányai.
Mindenki egyetért abban, hogy a naplók kulcsfontosságúak számos területen, beleértve a hibaelhárítást és a rendszer teljesítményének javítását. Az alábbiakban a konténernaplók használatának két fő szempontját ismertetjük:
- Monitoring: A naplók elsődleges célja a figyelés. Általában felfedik konténeres alkalmazásaink általános állapotát.
- Hibaelhárítás: Probléma esetén a naplók segítenek felismerni az alkalmazáshibákat.
Mivel a dokkolónaplók és a docker-összeállítási naplók folyamatosan generálódnak, ezek kitölthetik az összes VPS-tárhelyet. Ezért szükségünk van egy stratégiára a lemezterület kezelésére, amelyet naplóforgatási szabályzatnak nevezünk. A házirend létrehozásához és használatához térjen vissza a docker-compose.yml fájlt, és nyissa meg. Ezután adjon hozzá egy naplózási szakaszt az alábbi konfigurációval:
version: '3.8' services: web: build: . ports: - "8080:80" volumes: - ./index.htm:/usr/share/nginx/html/index.htm logging: driver: json-file options: max-size: "200k" max-file: "10"
Állandóan lehet igazítani max méretű és max-fájl az Ön igényei szerint.
Docker naplók szállítási modellek
Előfordulhat, hogy a mérnökök más naplózási modellt választanak a fejlettebb környezetekben, mint az alapértelmezett JSON-illesztőprogramok, például a Syslog, a fluentd és mások. Fontos azonban megjegyezni, hogy a JSON-fájl-illesztőprogram a legtöbb naplózási forgatókönyvhöz alkalmas, és előfordulhat, hogy nem kell eltérni az alapértelmezett módtól.
Az alkalmazás architektúrájától vagy szervezeti követelményeitől függően előfordulhat, hogy központi naplózási megoldásokat kell használnia, amelyeket naplógyűjtőknek neveznek. Ezek a szolgáltatások, beleértve Elaszticsearch, Logstash, Kibana stb., úgy vannak kialakítva, hogy különböző forrásokból fogadják a naplókat, és egyetlen központi helyen konszolidálják, tárolják és elemezzék azokat.
Ezzel szemben a naplókat költséghatékonyabb tárolási megoldásokkal kell tárolnia. Vegye figyelembe azt a forgatókönyvet, amikor a VPS nagy sebességű és drága tárhelyet használ; Előfordulhat, hogy nem gazdaságos olyan prémium erőforrásokat használni a naplók tárolására, amelyekre csak későbbi felhasználás céljából lesz szüksége.
Számos fakitermelési modell áll rendelkezésre, mindegyiknek megvannak az előnyei és hátrányai. Alapvető fontosságú az egyes modellek gondos értékelése, és az egyedi igények alapján történő kiválasztása.
Szerezzen be magának egy gazdaságos vagy prémium Linux VPS-t webhelye vagy távoli asztali üzemeltetéséhez a legolcsóbb áron. VPS Linux KVM-en fut a nagyobb hatékonyság érdekében, és nagy teljesítményű hardveren dolgozik NVMe SSD tárhellyel a nagyobb sebesség érdekében.
Olvasson továbbKövetkeztetés
A Docker Compose naplók megértése kulcsfontosságú. Segítenek a Docker-alkalmazások kezelésében és hibakeresésében. Ha megtanulja elérni és figyelni ezeket a naplókat, az javítja a problémamegoldást, és növeli az alkalmazás teljesítményét és biztonságát. Legyen szó rendszerek fejlesztéséről vagy adminisztrálásáról, a Docker Compose naplók használata elengedhetetlen. Gondoskodnak arról, hogy a konténerkezelés hatékony legyen.
GYIK
Hogyan szűrhetem a Docker Compose naplóit idő szerint?
A Docker Compose nem kínál közvetlen módszert a naplók idő szerinti szűrésére. A naplókat azonban szűrheti úgy, hogy átvezeti őket a grep-en keresztül a mintaillesztés érdekében. Használhatja például: docker-compose logs | grep „2023-04-06”, a „2023-04-06” helyett a keresett dátum- vagy időmintával.
Hogyan lehet leállítani a Docker Compose segítségével elindított konténereket?
Keresse meg a docker-compose.yml fájlt tartalmazó könyvtárat, és futtassa a docker-compose le parancsot.
Hogyan lehet manuálisan eltávolítani a naplófájlokat?
A docker-compose.yml fájlban a naplóforgatás konfigurálása helyett manuálisan is eltávolíthatja a Docker JSON naplófájljait a /var/lib/docker/containers/<container_id>/ mappából. Mielőtt ezt megtenné, azonosítania kell a Docker tárolóazonosítót a docker ps -a paraméterrel.
Tudja farka Docker naplókat?
Igen, megteheti. Ehhez használja a docker logs parancsot az -f vagy -follow kapcsolóval együtt. Ez a Docker-naplókat fogja az Ön számára.